summaryrefslogtreecommitdiffstats
path: root/gui-clamp/ui-react/src/components/dialogs/ControlLoop/GetToscaTemplate.test.js
diff options
context:
space:
mode:
authorLiam Fallon <liam.fallon@est.tech>2021-11-03 14:27:31 +0000
committerGerrit Code Review <gerrit@onap.org>2021-11-03 14:27:31 +0000
commit39137c00704abf506878a7fdc8861d047e11cd37 (patch)
treeef2929a239becfa2ab57a790dd7c6dc2b5abbf10 /gui-clamp/ui-react/src/components/dialogs/ControlLoop/GetToscaTemplate.test.js
parent3ce3724d46c0c1d4d13613b1920e3da858117e23 (diff)
parentce0db169bce5d44ab36be7015a11c9a0205e05a1 (diff)
Merge "Added tests to improve coverage"
Diffstat (limited to 'gui-clamp/ui-react/src/components/dialogs/ControlLoop/GetToscaTemplate.test.js')
-rw-r--r--gui-clamp/ui-react/src/components/dialogs/ControlLoop/GetToscaTemplate.test.js40
1 files changed, 36 insertions, 4 deletions
diff --git a/gui-clamp/ui-react/src/components/dialogs/ControlLoop/GetToscaTemplate.test.js b/gui-clamp/ui-react/src/components/dialogs/ControlLoop/GetToscaTemplate.test.js
index 38da005..71fbeec 100644
--- a/gui-clamp/ui-react/src/components/dialogs/ControlLoop/GetToscaTemplate.test.js
+++ b/gui-clamp/ui-react/src/components/dialogs/ControlLoop/GetToscaTemplate.test.js
@@ -21,9 +21,12 @@ import React from 'react';
import { mount, shallow } from 'enzyme';
import GetToscaTemplate from './GetToscaTemplate';
import toJson from "enzyme-to-json";
+import { act } from "react-dom/test-utils";
describe('Verify GetToscaTemplate', () => {
+ const flushPromises = () => new Promise(setImmediate);
+
it("renders without crashing", () => {
shallow(<GetToscaTemplate/>);
});
@@ -38,12 +41,41 @@ describe('Verify GetToscaTemplate', () => {
expect(container.find('Button').length).toEqual(1);
});
- it('button should call getTemplateHandler when clicked', async () => {
- const component = mount(<GetToscaTemplate/>)
+ it('button should call getTemplateHandler when clicked when response is error', async () => {
+
+ const onGetToscaServiceTemplate = jest.fn()
+ jest
+ .spyOn(global, 'fetch')
+ .mockImplementationOnce(async () =>
+ Promise.resolve({
+ ok: false,
+ status: 200,
+ json: () => {
+ return Promise.resolve({
+ "tosca_definitions_version": "tosca_simple_yaml_1_1_0",
+ "data_types": {},
+ "policy_types": {},
+ "topology_template": {},
+ "name": "ToscaServiceTemplateSimple",
+ "version": "1.0.0",
+ "metadata": {},
+ "id": "0.19518677404255147"
+ })
+ }
+ }
+ )
+ )
+
+ const component = mount(<GetToscaTemplate onGetToscaServiceTemplate={onGetToscaServiceTemplate}/>)
const logSpy = jest.spyOn(console, 'log');
- component.find('[variant="primary"]').simulate('click');
- expect(logSpy).toHaveBeenCalledWith('getTemplateHandler called');
+ await act(async () => {
+ component.find('[variant="primary"]').simulate('click');
+ await flushPromises()
+ component.update()
+ expect(logSpy).toHaveBeenCalledWith('getToscaServiceTemplateHandler called with error');
+ });
+ component.unmount();
});
it('should have a Button element with specified text', () => {