diff options
Diffstat (limited to 'src/app/shared/pipes')
-rw-r--r-- | src/app/shared/pipes/vm-filtering.pipe.spec.ts | 49 | ||||
-rw-r--r-- | src/app/shared/pipes/vm-filtering.pipe.ts | 42 |
2 files changed, 91 insertions, 0 deletions
diff --git a/src/app/shared/pipes/vm-filtering.pipe.spec.ts b/src/app/shared/pipes/vm-filtering.pipe.spec.ts new file mode 100644 index 0000000..523abfb --- /dev/null +++ b/src/app/shared/pipes/vm-filtering.pipe.spec.ts @@ -0,0 +1,49 @@ +/* +============LICENSE_START========================================== +=================================================================== +Copyright (C) 2018 AT&T Intellectual Property. All rights reserved. +=================================================================== + +Unless otherwise specified, all software contained herein is licensed +under the Apache License, Version 2.0 (the License); +you may not use this software except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +ECOMP is a trademark and service mark of AT&T Intellectual Property. +============LICENSE_END============================================ */ +import {VmFilteringPipe} from './vm-filtering.pipe'; + +describe('VmFilteringPipe', () => { + it('create an instance', () => { + const pipe = new VmFilteringPipe(); + expect(pipe).toBeTruthy(); + }); + it('should return configscaleout values if template id matches',()=>{ + const pipe = new VmFilteringPipe(); + + let objArray = [ + {action:"Configure","template-id":2,"type":"con"}, + {action:"ConfigScaleout","template-id":1,"type":"conScale"} + ] + expect(pipe.transform(objArray,"ConfigScaleOut",1)[0].type).toBe("conScale") + + }); + it('should return configure calues',()=>{ + const pipe = new VmFilteringPipe(); + + let objArray = [ + {action:"Configure","template-id":2,"type":"con"}, + {action:"ConfigScaleout","template-id":1,"type":"conScale"} + ] + expect(pipe.transform(objArray,"ConfigScaleOut",2)[0].type).toBe("con") + + }); +}); diff --git a/src/app/shared/pipes/vm-filtering.pipe.ts b/src/app/shared/pipes/vm-filtering.pipe.ts new file mode 100644 index 0000000..c20397b --- /dev/null +++ b/src/app/shared/pipes/vm-filtering.pipe.ts @@ -0,0 +1,42 @@ +/* +============LICENSE_START========================================== +=================================================================== +Copyright (C) 2018 AT&T Intellectual Property. All rights reserved. +=================================================================== + +Unless otherwise specified, all software contained herein is licensed +under the Apache License, Version 2.0 (the License); +you may not use this software except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +ECOMP is a trademark and service mark of AT&T Intellectual Property. +============LICENSE_END============================================ */ +import {Pipe, PipeTransform} from '@angular/core'; + +@Pipe({name: 'vmFiltering', pure: false}) +export class VmFilteringPipe implements PipeTransform { + + transform(value: any, action: any, templateId): any { + + if (action == 'ConfigScaleOut') { + let x = value.filter(obj => { + //return value + return obj['template-id'] == templateId; + }); + + return x; + } else { + return value; + + } + } + +} |