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/pipes/dynamicInputLabel | |
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/pipes/dynamicInputLabel')
2 files changed, 55 insertions, 0 deletions
diff --git a/vid-webpack-master/src/app/shared/pipes/dynamicInputLabel/dynamic-input-label.pipe.spec.ts b/vid-webpack-master/src/app/shared/pipes/dynamicInputLabel/dynamic-input-label.pipe.spec.ts new file mode 100644 index 000000000..22b619290 --- /dev/null +++ b/vid-webpack-master/src/app/shared/pipes/dynamicInputLabel/dynamic-input-label.pipe.spec.ts @@ -0,0 +1,43 @@ +import { DynamicInputLabelPipe } from './dynamic-input-label.pipe'; + +describe('Dynamic input label Pipe', () => { + let dynamicInputLabelPipe: DynamicInputLabelPipe; + + beforeEach(() => { + dynamicInputLabelPipe = new DynamicInputLabelPipe(); + }); + + it('Dynamic input label Pipe should be defined', () => { + expect(dynamicInputLabelPipe).toBeDefined(); + }); + + it('Dynamic input label Pipe : Empty string should return empty string', ()=> { + let result: string = dynamicInputLabelPipe.transform(''); + expect(result).toEqual(':*'); + }); + + it('Dynamic input label Pipe: vnf should be VNF (UPPERCASE)', ()=> { + let result: string = dynamicInputLabelPipe.transform('vnf'); + expect(result).toEqual('VNF:*'); + }); + + it('Dynamic input label Pipe : nf should be NF (UPPERCASE)\'', ()=> { + let result: string = dynamicInputLabelPipe.transform('nf'); + expect(result).toEqual('NF:*'); + }); + + it('Dynamic input label Pipe : Underscore should replace by empty character', ()=> { + let result: string = dynamicInputLabelPipe.transform('nf_Test'); + expect(result).toEqual('NF test:*'); + }); + + it('Dynamic input label Pipe : Complex string', ()=> { + let result: string = dynamicInputLabelPipe.transform('nf_Test_vnf_nf'); + expect(result).toEqual('NF test VNF NF:*'); + }); + + it('Dynamic input label Pipe : First letter should be uppercase', ()=> { + let result: string = dynamicInputLabelPipe.transform('nfr'); + expect(result).toEqual('Nfr:*'); + }); +}); diff --git a/vid-webpack-master/src/app/shared/pipes/dynamicInputLabel/dynamic-input-label.pipe.ts b/vid-webpack-master/src/app/shared/pipes/dynamicInputLabel/dynamic-input-label.pipe.ts new file mode 100644 index 000000000..bec87b46d --- /dev/null +++ b/vid-webpack-master/src/app/shared/pipes/dynamicInputLabel/dynamic-input-label.pipe.ts @@ -0,0 +1,12 @@ +import {PipeTransform, Pipe} from '@angular/core'; + +@Pipe({ name: 'dynamicInputLabel' }) +export class DynamicInputLabelPipe implements PipeTransform { + transform(text: string): string { + let split_label = text.toLowerCase().replace(/_/g,' '); + let uppercase_vnf = split_label.replace(/\bvnf\b/ig, 'VNF'); + let uppercase_nf = uppercase_vnf.replace(/\bnf\b/ig, 'NF'); + let capitalize_sentence = uppercase_nf.charAt(0).toUpperCase() + uppercase_nf.slice(1); + return capitalize_sentence + ':*'; + } +} |