diff options
Diffstat (limited to 'catalog-ui/src/app/ng2/pipes/entity-filter.pipe.spec.ts')
-rw-r--r-- | catalog-ui/src/app/ng2/pipes/entity-filter.pipe.spec.ts | 55 |
1 files changed, 30 insertions, 25 deletions
diff --git a/catalog-ui/src/app/ng2/pipes/entity-filter.pipe.spec.ts b/catalog-ui/src/app/ng2/pipes/entity-filter.pipe.spec.ts index 6e0a79bbed..967345a9ad 100644 --- a/catalog-ui/src/app/ng2/pipes/entity-filter.pipe.spec.ts +++ b/catalog-ui/src/app/ng2/pipes/entity-filter.pipe.spec.ts @@ -22,8 +22,9 @@ import { TestBed } from "@angular/core/testing"; import { EntityFilterPipe } from './entity-filter.pipe'; import { IEntityFilterObject } from './entity-filter.pipe'; -import { Component } from "app/models"; +import {Component} from "app/models"; import { ISearchFilter } from './entity-filter.pipe'; +import {DataTypeCatalogComponent} from "../../models/data-type-catalog-component"; describe('EntityFilterPipe', () => { let entityFilterPipe: EntityFilterPipe; @@ -42,35 +43,37 @@ describe('EntityFilterPipe', () => { }); it('Transform method should filter objects by type matching with selectedComponentTypes', () => { - let componentList: Array<Component> = []; - - const mockComponent = { - componentType: 'testtype', - isResource: jest.fn().mockImplementation(() => false) - } as Partial<Component> as Component; - componentList.push(mockComponent); + let componentList: Array<Component | DataTypeCatalogComponent> = []; const mockComponent1 = { - componentType: 'newtesttype', - isResource: jest.fn().mockImplementation(() => false) + componentType: 'SERVICE', + isResource: jest.fn().mockImplementation(() => false), } as Partial<Component> as Component; componentList.push(mockComponent1); const mockComponent2 = { - componentType: 'newtesttype', + componentType: 'RESOURCE', isResource: jest.fn().mockImplementation(() => true), getComponentSubType: jest.fn().mockImplementation(() => 'subComponent') } as Partial<Component> as Component; componentList.push(mockComponent2); + const mockComponent3 = { + componentType: 'DATATYPE', + getComponentSubType: jest.fn().mockImplementation(() => 'toscaSubComponent') + } as Partial<DataTypeCatalogComponent> as DataTypeCatalogComponent; + componentList.push(mockComponent3); + entityFilterMock = { - selectedComponentTypes: ['Testtype', 'Testtype1'], - selectedResourceSubTypes: ['subComponent'] + selectedComponentTypes: ['Service', 'RESOURCE'], + selectedResourceSubTypes: ['subComponent'], + selectedToscaTypes: ['toscaSubComponent'] }; - let response: Array<Component> = entityFilterPipe.transform(componentList, entityFilterMock); - expect(response).toHaveLength(2); - expect(response[0]).toEqual(mockComponent); + let response: Array<Component | DataTypeCatalogComponent> = entityFilterPipe.transform(componentList, entityFilterMock); + expect(response).toHaveLength(3); + expect(response[0]).toEqual(mockComponent1); expect(response[1]).toEqual(mockComponent2); + expect(response[2]).toEqual(mockComponent3); }); it('Transform method should filter objects by categories & subcategories matching with selectedCategoriesModel', () => { @@ -104,7 +107,7 @@ describe('EntityFilterPipe', () => { entityFilterMock = { selectedCategoriesModel: ['categoryname.subcategoryname', 'resourceNewCategory.name', 'serviceNewCategory.name'] }; - let response: Array<Component> = entityFilterPipe.transform(componentList, entityFilterMock); + let response: Array<Component | DataTypeCatalogComponent> = entityFilterPipe.transform(componentList, entityFilterMock); expect(response).toHaveLength(3); expect(response[0]).toEqual(mockComponent); expect(response[1]).toEqual(mockComponent2); @@ -132,7 +135,7 @@ describe('EntityFilterPipe', () => { entityFilterMock = { selectedStatuses: ['lifecyclestatus', 'DISTRIBUTED'] }; - let response: Array<Component> = entityFilterPipe.transform(componentList, entityFilterMock); + let response: Array<Component | DataTypeCatalogComponent> = entityFilterPipe.transform(componentList, entityFilterMock); expect(response).toHaveLength(2); expect(response[0]).toEqual(mockComponent); expect(response[1]).toEqual(mockComponent2); @@ -153,7 +156,7 @@ describe('EntityFilterPipe', () => { entityFilterMock = { distributed: ['diststatus', 'localstatus'] }; - let response: Array<Component> = entityFilterPipe.transform(componentList, entityFilterMock); + let response: Array<Component | DataTypeCatalogComponent> = entityFilterPipe.transform(componentList, entityFilterMock); expect(response).toHaveLength(1); expect(response[0]).toEqual(mockComponent); }); @@ -178,7 +181,7 @@ describe('EntityFilterPipe', () => { entityFilterMock = { selectedModels: ['testModel', 'localTest', 'SDC AID'] }; - let response: Array<Component> = entityFilterPipe.transform(componentList, entityFilterMock); + let response: Array<Component | DataTypeCatalogComponent> = entityFilterPipe.transform(componentList, entityFilterMock); expect(response).toHaveLength(2); expect(response[0]).toEqual(mockComponent); expect(response[1]).toEqual(mockComponent2); @@ -186,16 +189,18 @@ describe('EntityFilterPipe', () => { it('Transform method should filter objects by custom search matching with given keys', () => { let componentList: Array<Component> = []; - const mockComponent = { + const mockComponentObj = Object.create(Component.prototype); + const mockComponent = Object.assign(mockComponentObj,{ distributionStatus: 'distributionStatus', model: 'testModel' - } as Partial<Component> as Component; + }); componentList.push(mockComponent); - const mockComponent1 = { + const mockComponentObj1 = Object.create(Component.prototype); + const mockComponent1 = Object.assign(mockComponentObj1,{ distributionStatus: 'testDiststatus', model: 'mockModel' - } as Partial<Component> as Component; + }); componentList.push(mockComponent1); const searchFilter: ISearchFilter = { @@ -204,7 +209,7 @@ describe('EntityFilterPipe', () => { entityFilterMock = { search: searchFilter }; - let response: Array<Component> = entityFilterPipe.transform(componentList, entityFilterMock); + let response: Array<Component | DataTypeCatalogComponent> = entityFilterPipe.transform(componentList, entityFilterMock); expect(response).toHaveLength(1); expect(response[0]).toEqual(mockComponent); }); |