aboutsummaryrefslogtreecommitdiffstats
path: root/vid-webpack-master/src/app/shared/pipes/dynamicInputLabel
diff options
context:
space:
mode:
Diffstat (limited to 'vid-webpack-master/src/app/shared/pipes/dynamicInputLabel')
-rw-r--r--vid-webpack-master/src/app/shared/pipes/dynamicInputLabel/dynamic-input-label.pipe.spec.ts43
-rw-r--r--vid-webpack-master/src/app/shared/pipes/dynamicInputLabel/dynamic-input-label.pipe.ts12
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 + ':*';
+ }
+}