import { augmentFeatures } from '~/security_configuration/utils'; import { mockSecurityFeatures, mockComplianceFeatures, mockFeaturesWithSecondary, mockInvalidCustomFeature, mockValidCustomFeature, expectedOutputCustomFeature, expectedOutputDefault, expectedOutputSecondary, } from './utils_mocks'; describe('augmentFeatures', () => { it('augments features array correctly when given an empty array', () => { expect(augmentFeatures(mockSecurityFeatures, mockComplianceFeatures, [])).toEqual( expectedOutputDefault, ); }); it('augments features array correctly when given an invalid populated array', () => { expect( augmentFeatures(mockSecurityFeatures, mockComplianceFeatures, mockInvalidCustomFeature), ).toEqual(expectedOutputDefault); }); it('augments features array correctly when features have secondary key', () => { expect(augmentFeatures(mockSecurityFeatures, mockFeaturesWithSecondary, [])).toEqual( expectedOutputSecondary, ); }); it('augments features array correctly when given a valid populated array', () => { expect( augmentFeatures(mockSecurityFeatures, mockComplianceFeatures, mockValidCustomFeature), ).toEqual(expectedOutputCustomFeature); }); });