From b7cdbb35507aa10b8f4fd236c393c231f52ea2e0 Mon Sep 17 00:00:00 2001 From: Karishma Chadha <kchadha@media.mit.edu> Date: Fri, 16 Nov 2018 18:24:56 -0500 Subject: [PATCH] Add test for ensuring that cloud connection does not happen just because of a project id change. isShowingWithId must also be true. --- test/unit/util/cloud-manager-hoc.test.jsx | 24 +++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/test/unit/util/cloud-manager-hoc.test.jsx b/test/unit/util/cloud-manager-hoc.test.jsx index 854f9b596..8f2716a3c 100644 --- a/test/unit/util/cloud-manager-hoc.test.jsx +++ b/test/unit/util/cloud-manager-hoc.test.jsx @@ -116,4 +116,28 @@ describe('CloudManagerHOC', () => { expect(vm.setCloudProvider.mock.calls.length).toBe(1); expect(CloudProvider).toHaveBeenCalledTimes(1); }); + + test('projectId change should not trigger cloudProvider connection unless isShowingWithId becomes true', () => { + const Component = () => <div />; + const WrappedComponent = cloudManagerHOC(Component); + const mounted = mount( + <WrappedComponent + cloudHost="nonEmpty" + store={stillLoadingStore} + username="user" + vm={vm} + /> + ); + mounted.setProps({ + projectId: 'a different id' + }); + expect(vm.setCloudProvider.mock.calls.length).toBe(0); + expect(CloudProvider).not.toHaveBeenCalled(); + mounted.setProps({ + isShowingWithId: true, + loadingState: LoadingState.SHOWING_WITH_ID + }); + expect(vm.setCloudProvider.mock.calls.length).toBe(1); + expect(CloudProvider).toHaveBeenCalledTimes(1); + }); }); -- GitLab