From 50c74a2ec859ee0da1eda4c75171d45b851de9ef Mon Sep 17 00:00:00 2001
From: mabashian
Date: Thu, 6 Feb 2020 10:29:23 -0500
Subject: [PATCH] Adds test coverage for node modal components
---
.../Modals/DeleteAllNodesModal.test.jsx | 4 +-
.../Modals/LinkModals/LinkAddModal.test.jsx | 14 +-
.../Modals/LinkModals/LinkDeleteModal.jsx | 2 +-
.../LinkModals/LinkDeleteModal.test.jsx | 13 +-
.../Modals/LinkModals/LinkEditModal.test.jsx | 20 +-
.../Modals/LinkModals/LinkModal.test.jsx | 85 ++++
.../Modals/NodeModals/NodeAddModal.jsx | 3 +-
.../Modals/NodeModals/NodeAddModal.test.jsx | 42 ++
.../Modals/NodeModals/NodeDeleteModal.jsx | 2 +
.../NodeModals/NodeDeleteModal.test.jsx | 85 ++++
.../Modals/NodeModals/NodeEditModal.jsx | 4 +-
.../Modals/NodeModals/NodeEditModal.test.jsx | 48 ++
.../Modals/NodeModals/NodeModal.jsx | 10 +-
.../Modals/NodeModals/NodeModal.test.jsx | 414 ++++++++++++++++++
.../Modals/NodeModals/NodeNextButton.jsx | 1 +
.../Modals/NodeModals/NodeNextButton.test.jsx | 48 ++
.../NodeModals/NodeTypeStep/NodeTypeStep.jsx | 56 +--
.../Modals/NodeModals/NodeViewModal.test.jsx | 22 +
.../Modals/NodeModals/RunStep.jsx | 3 +
.../Modals/NodeModals/RunStep.test.jsx | 40 ++
.../Modals/UnsavedChangesModal.test.jsx | 4 +-
21 files changed, 862 insertions(+), 58 deletions(-)
create mode 100644 awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkModal.test.jsx
create mode 100644 awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeAddModal.test.jsx
create mode 100644 awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeDeleteModal.test.jsx
create mode 100644 awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeEditModal.test.jsx
create mode 100644 awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.test.jsx
create mode 100644 awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeNextButton.test.jsx
create mode 100644 awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeViewModal.test.jsx
create mode 100644 awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/RunStep.test.jsx
diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/DeleteAllNodesModal.test.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/DeleteAllNodesModal.test.jsx
index 5c28c06adb..45f426755d 100644
--- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/DeleteAllNodesModal.test.jsx
+++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/DeleteAllNodesModal.test.jsx
@@ -1,7 +1,5 @@
import React from 'react';
-import {
- WorkflowDispatchContext,
-} from '@contexts/Workflow';
+import { WorkflowDispatchContext } from '@contexts/Workflow';
import { mountWithContexts } from '@testUtils/enzymeHelpers';
import DeleteAllNodesModal from './DeleteAllNodesModal';
diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkAddModal.test.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkAddModal.test.jsx
index e7b5b94c40..bb68a69161 100644
--- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkAddModal.test.jsx
+++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkAddModal.test.jsx
@@ -1,12 +1,15 @@
import React from 'react';
import { mountWithContexts } from '@testUtils/enzymeHelpers';
-import { WorkflowDispatchContext, WorkflowStateContext } from '@contexts/Workflow';
+import {
+ WorkflowDispatchContext,
+ WorkflowStateContext,
+} from '@contexts/Workflow';
import LinkAddModal from './LinkAddModal';
const dispatch = jest.fn();
const workflowContext = {
- linkToEdit: null
+ linkToEdit: null,
};
describe('LinkAddModal', () => {
@@ -17,8 +20,11 @@ describe('LinkAddModal', () => {
- );
+ );
wrapper.find('button#link-confirm').simulate('click');
- expect(dispatch).toHaveBeenCalledWith({ type: 'CREATE_LINK', linkType: 'success' });
+ expect(dispatch).toHaveBeenCalledWith({
+ type: 'CREATE_LINK',
+ linkType: 'success',
+ });
});
});
diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkDeleteModal.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkDeleteModal.jsx
index d868e12083..216ecb71e3 100644
--- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkDeleteModal.jsx
+++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkDeleteModal.jsx
@@ -28,7 +28,7 @@ function LinkDeleteModal({ i18n }) {
{i18n._(t`Remove`)}
,
onUpdateLinkType('success')}
/>
onUpdateLinkType('failure')}
/>
{
+ beforeAll(() => {
+ wrapper = mountWithContexts(
+
+ );
+ });
+
+ afterAll(() => {
+ wrapper.unmount();
+ });
+
+ test('Default selected card matches default link type when present', () => {
+ expect(wrapper.find('#link-type-success').props().isSelected).toBe(false);
+ expect(wrapper.find('#link-type-failure').props().isSelected).toBe(false);
+ expect(wrapper.find('#link-type-always').props().isSelected).toBe(true);
+ });
+
+ test('Clicking success card makes expected callback', () => {
+ wrapper.find('#link-type-success').simulate('click');
+ expect(onUpdateLinkType).toHaveBeenCalledWith('success');
+ });
+
+ test('Clicking failure card makes expected callback', () => {
+ wrapper.find('#link-type-failure').simulate('click');
+ expect(onUpdateLinkType).toHaveBeenCalledWith('failure');
+ });
+
+ test('Clicking always card makes expected callback', () => {
+ wrapper.find('#link-type-always').simulate('click');
+ expect(onUpdateLinkType).toHaveBeenCalledWith('always');
+ });
+});
diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/UnsavedChangesModal.test.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/UnsavedChangesModal.test.jsx
index 850ef98e8e..01b5e59780 100644
--- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/UnsavedChangesModal.test.jsx
+++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/UnsavedChangesModal.test.jsx
@@ -1,7 +1,5 @@
import React from 'react';
-import {
- WorkflowDispatchContext,
-} from '@contexts/Workflow';
+import { WorkflowDispatchContext } from '@contexts/Workflow';
import { mountWithContexts } from '@testUtils/enzymeHelpers';
import UnsavedChangesModal from './UnsavedChangesModal';