| /* |
| * Copyright © 2019 Vodafone Group |
| * |
| * 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. |
| */ |
| import deepFreeze from 'deep-freeze'; |
| import mockRest from 'test-utils/MockRest.js'; |
| import { cloneAndSet } from 'test-utils/Util.js'; |
| import { storeCreator } from 'sdc-app/AppStore.js'; |
| import SoftwareProductValidationResultsViewActionHelper from 'sdc-app/onboarding/softwareProduct/validationResults/SoftwareProductValidationResultsViewActionHelper.js'; |
| import { tabsMapping } from 'sdc-app/onboarding/softwareProduct/validation/SoftwareProductValidationConstants.js'; |
| import Configuration from 'sdc-app/config/Configuration.js'; |
| import { VSPTestResultsSuccessFactory } from 'test-utils/factories/softwareProduct/SoftwareProductValidationResultsFactory.js'; |
| import { VSPTestResultsFailureFactory } from 'test-utils/factories/softwareProduct/SoftwareProductValidationResultsFactory.js'; |
| import { VSPTestResultKeysFactory } from 'test-utils/factories/softwareProduct/SoftwareProductValidationResultsFactory.js'; |
| import { VSPTestsMapFactory } from 'test-utils/factories/softwareProduct/SoftwareProductValidationFactory.js'; |
| import { VSPChecksFactory } from 'test-utils/factories/softwareProduct/SoftwareProductValidationFactory.js'; |
| import { VSPTestsRequestFactory } from 'test-utils/factories/softwareProduct/SoftwareProductValidationFactory.js'; |
| import { VSPGeneralInfoFactory } from 'test-utils/factories/softwareProduct/SoftwareProductValidationFactory.js'; |
| import VersionFactory from 'test-utils/factories/common/VersionFactory.js'; |
| |
| |
| describe('Software Product Validation Test Result Action Helper Tests', function() { |
| const store = storeCreator(); |
| deepFreeze(store.getState()); |
| const version = VersionFactory.build(); |
| const vspId = 10000; |
| const vspChecksList = VSPChecksFactory.build(); |
| const vspTestsMap = VSPTestsMapFactory.build(); |
| |
| const errorMessage = { msg: 'Test Error Message' }; |
| const testsRequest = VSPTestsRequestFactory.build(); |
| const generalInfo = VSPGeneralInfoFactory.build(); |
| const isValidationDisabled = false; |
| const testResultKeys = VSPTestResultKeysFactory.build(); |
| const vspTestResults = VSPTestResultsSuccessFactory.build(); |
| const requestQuery = "requestId="+testResultKeys.testResultKeys.requestId |
| + "&" + "endPoint=" + testResultKeys.testResultKeys.endPoints[0]; |
| let restPrefix = Configuration.get('restPrefix'); |
| let onClose = () => {}; |
| |
| const modal = { |
| type: 'error', |
| title: 'Error', |
| modalComponentName: 'Error', |
| modalComponentProps: { |
| onClose: onClose |
| }, |
| msg: { |
| msg: 'Test Error Message' |
| }, |
| cancelButtonText: 'OK' |
| }; |
| |
| it('Software Products Validation Test Result Action Helper : fetch vsp', () => { |
| let expectedStore = cloneAndSet( |
| store.getState(), |
| 'softwareProduct.softwareProductValidationResult.vspChecks', |
| vspChecksList |
| ); |
| mockRest.addHandler('fetch', ({ baseUrl }) => { |
| expect(baseUrl).toEqual( |
| `${restPrefix}/v1.0/externaltesting/testcasetree` |
| ); |
| return vspChecksList; |
| }); |
| return SoftwareProductValidationResultsViewActionHelper.fetchVspChecks( |
| store.dispatch |
| ).then(() => { |
| var stat = store.getState(); |
| expect(stat).toEqual(expectedStore); |
| }) |
| }); |
| |
| it('Software Products Validation Test Result Action Helper : RefreshValidationResults', () => { |
| let expectedStore = cloneAndSet( |
| store.getState(), |
| 'softwareProduct.softwareProductValidationResult.vspTestResults', |
| vspTestResults.vspTestResults |
| ); |
| mockRest.addHandler('fetch', ({ baseUrl }) => { |
| expect(baseUrl).toEqual( |
| `${restPrefix}/v1.0/externaltesting/executions?${requestQuery}` |
| ); |
| return vspTestResults.vspTestResults; |
| }); |
| return SoftwareProductValidationResultsViewActionHelper.refreshValidationResults( |
| store.dispatch, { |
| requestId: testResultKeys.testResultKeys.requestId, |
| endPoints: testResultKeys.testResultKeys.endPoints |
| } |
| ).then(() => { |
| var stt = store.getState(); |
| expect(stt).toEqual(expectedStore); |
| }) |
| }); |
| }) |