diff options
author | Sonsino, Ofir (os0695) <os0695@intl.att.com> | 2018-07-10 15:57:37 +0300 |
---|---|---|
committer | Sonsino, Ofir (os0695) <os0695@intl.att.com> | 2018-07-10 15:57:37 +0300 |
commit | ff76b5ed0aa91d5fdf9dc4f95e8b20f91ed9d072 (patch) | |
tree | aae42404a93fdffdd16ff050eaa28129959f7577 /vid-webpack-master/src/app/shared/components/validators | |
parent | c72d565bb58226b20625b2bce5f0019046bee649 (diff) |
New Angular UI from 1806
Change-Id: I39c160db0e0a6ec2e587ccf007ee1b23c6a08666
Issue-ID: VID-208
Signed-off-by: Sonsino, Ofir (os0695) <os0695@intl.att.com>
Diffstat (limited to 'vid-webpack-master/src/app/shared/components/validators')
2 files changed, 59 insertions, 0 deletions
diff --git a/vid-webpack-master/src/app/shared/components/validators/numbersLettersUnderscore/numbersLettersUnderscore.validator.spec.ts b/vid-webpack-master/src/app/shared/components/validators/numbersLettersUnderscore/numbersLettersUnderscore.validator.spec.ts new file mode 100644 index 000000000..ec9f3f73e --- /dev/null +++ b/vid-webpack-master/src/app/shared/components/validators/numbersLettersUnderscore/numbersLettersUnderscore.validator.spec.ts @@ -0,0 +1,39 @@ +import { ReflectiveInjector } from '@angular/core'; +import { NumbersLettersUnderscoreValidator } from './numbersLettersUnderscore.validator'; + +describe('Numbers letters underscore validator', () => { + let injector; + let service: NumbersLettersUnderscoreValidator; + + beforeEach(() => { + + let injector = ReflectiveInjector.resolveAndCreate([ + NumbersLettersUnderscoreValidator + ]); + + service = injector.get(NumbersLettersUnderscoreValidator); + }); + + + describe('#valid', () => { + it("'legal' should return null", ()=> { + let legalVal: string = "legal"; + let result = NumbersLettersUnderscoreValidator.valid(legalVal); + expect(result).toBeNull(); + }); + + it("'illegal' should return object with invalidNumberLettersUnderscore true", ()=> { + let illegalVal: string = "illegal-Val"; + let result = NumbersLettersUnderscoreValidator.valid(illegalVal); + expect(result.invalidNumberLettersUnderscore).toBeTruthy(); + }); + + it("'null' should return null", ()=> { + let nullVal: string = null + let result = NumbersLettersUnderscoreValidator.valid(nullVal); + expect(result).toBeNull(); + }); + + + }); +}); diff --git a/vid-webpack-master/src/app/shared/components/validators/numbersLettersUnderscore/numbersLettersUnderscore.validator.ts b/vid-webpack-master/src/app/shared/components/validators/numbersLettersUnderscore/numbersLettersUnderscore.validator.ts new file mode 100644 index 000000000..418bdfc4d --- /dev/null +++ b/vid-webpack-master/src/app/shared/components/validators/numbersLettersUnderscore/numbersLettersUnderscore.validator.ts @@ -0,0 +1,20 @@ +import { Injectable } from '@angular/core'; +import { isNullOrUndefined, isString } from 'util'; + +@Injectable() +export class NumbersLettersUnderscoreValidator { + static valid(control: any) { + let reg = /^[a-zA-Z0-9_]*$/; + + if(isNullOrUndefined(control)) return null; + let val = isString(control) ? control : control.value; + if (val === null) { + return {'invalidNumberLettersUnderscore': true}; + } + if (reg.test(val)) { + return null; + } else { + return {'invalidNumberLettersUnderscore': true}; + } + } +} |