diff options
Diffstat (limited to 'test/vnfSearch/vnfSearchVisualizations/vnfSearchVisualizationsReducer.test.js')
-rw-r--r-- | test/vnfSearch/vnfSearchVisualizations/vnfSearchVisualizationsReducer.test.js | 149 |
1 files changed, 149 insertions, 0 deletions
diff --git a/test/vnfSearch/vnfSearchVisualizations/vnfSearchVisualizationsReducer.test.js b/test/vnfSearch/vnfSearchVisualizations/vnfSearchVisualizationsReducer.test.js new file mode 100644 index 0000000..e146f11 --- /dev/null +++ b/test/vnfSearch/vnfSearchVisualizations/vnfSearchVisualizationsReducer.test.js @@ -0,0 +1,149 @@ +/* + * ============LICENSE_START======================================================= + * SPARKY (AAI UI service) + * ================================================================================ + * Copyright © 2017 AT&T Intellectual Property. + * Copyright © 2017 Amdocs + * All rights reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file 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. + * ============LICENSE_END========================================================= + * + * ECOMP and OpenECOMP are trademarks + * and service marks of AT&T Intellectual Property. + */ + +import React from 'react'; +import { expect } from 'chai'; +import reducer from 'app/vnfSearch/vnfSearchVisualizations/VnfSearchVisualizationsReducer.js'; +import { + CHART_ORCH_STATUS, + CHART_PROV_STATUS, vnfSearchVisualizationsActionTypes} from 'app/vnfSearch/vnfSearchVisualizations/VnfSearchVisualizationsConstants.js'; + + + +describe('VNF: Audit Visualizations Reducers test suite', function() { + const initialState = { + processedProvStatusCountChartData: CHART_PROV_STATUS.clearingEmptyData, + processedOrchStatusCountChartData: CHART_ORCH_STATUS.clearingEmptyData + }; + const initStateWithData = { + processedProvStatusCountChartData: [ + { + values: [ + { + x: 'complex', + y: 60 + } + ] + } + ], + processedOrchStatusCountChartData: [ + { + values: [ + { + x: 'prov-status', + y: 60 + } + ] + } + ] + }; + + + + it('VNF: COUNT_BY_ORCH_STATUS_RECEIVED event', function() { + const chartData = [ + { + 'values': [ + { 'x': 'physical-location-id', 'y': 22}, + { 'x': 'prov-status', 'y': 14}, + { 'x': 'status-type-3', 'y': 24} + ] + } + ]; + + const action = { + type: vnfSearchVisualizationsActionTypes.COUNT_BY_ORCH_STATUS_RECEIVED, + data: { + orchStatusCountChartData: { + chartData: chartData, + } + } + }; + + const newState = reducer(initialState, action); + expect(newState.processedOrchStatusCountChartData[0].values.length).to.equal(3); + expect(newState.processedOrchStatusCountChartData[0].values[0]['x']).to.equal('physical-location-id'); + expect(newState.processedOrchStatusCountChartData[0].values[1]['x']).to.equal('prov-status'); + expect(newState.processedOrchStatusCountChartData[0].values[2]['x']).to.equal('status-type-3'); + expect(newState.processedOrchStatusCountChartData[0].values[0]['y']).to.equal(22); + expect(newState.processedOrchStatusCountChartData[0].values[1]['y']).to.equal(14); + expect(newState.processedOrchStatusCountChartData[0].values[2]['y']).to.equal(24); + }); + + it('VNF: COUNT_BY_PROV_STATUS_RECEIVED event', function() { + const chartData = [ + { + 'values': [ + { 'x': 'physical-location-id', 'y': 22}, + { 'x': 'prov-status', 'y': 14}, + { 'x': 'status-type-3', 'y': 24} + ] + } + ]; + + const action = { + type: vnfSearchVisualizationsActionTypes.COUNT_BY_PROV_STATUS_RECEIVED, + data: { + provStatusCountChartData: { + chartData: chartData, + } + } + }; + + const newState = reducer(initialState, action); + expect(newState.processedProvStatusCountChartData[0].values.length).to.equal(3); + expect(newState.processedProvStatusCountChartData[0].values[0]['x']).to.equal('physical-location-id'); + expect(newState.processedProvStatusCountChartData[0].values[1]['x']).to.equal('prov-status'); + expect(newState.processedProvStatusCountChartData[0].values[2]['x']).to.equal('status-type-3'); + expect(newState.processedProvStatusCountChartData[0].values[0]['y']).to.equal(22); + expect(newState.processedProvStatusCountChartData[0].values[1]['y']).to.equal(14); + expect(newState.processedProvStatusCountChartData[0].values[2]['y']).to.equal(24); + }); + + + it('VNF: Total VNF event', function() { + + + const action = { + type: vnfSearchVisualizationsActionTypes.TOTAL_VNF_COUNT_RECEIVED, + data: {count: 10} + }; + + const newState = reducer(initialState, action); + expect(newState.count).to.equal(10); + + }); + + + it('VNF: NETWORK_ERROR event', function() { + const action = { + type: vnfSearchVisualizationsActionTypes.VNF_SEARCH_NETWORK_ERROR + } + const newState = reducer(initStateWithData, action); + expect(newState.processedProvStatusCountChartData).to.deep.equal(CHART_PROV_STATUS.clearingEmptyData); + expect(newState.processedOrchStatusCountChartData).to.deep.equal(CHART_ORCH_STATUS.clearingEmptyData); + }); + +}); |