From 0a6fc8cb89987ba61e3c3499ba88b627ccf3201b Mon Sep 17 00:00:00 2001 From: Michael Abashian Date: Wed, 26 Jun 2019 16:07:58 -0400 Subject: [PATCH] Fix for unit test failure in jt detail test where getting instance groups wasn't mocked (#296) Fix for unit test failure in jt detail test where getting instance groups wasn't mocked. --- .../JobTemplateDetail/JobTemplateDetail.jsx | 12 ++++++------ .../JobTemplateDetail/JobTemplateDetail.test.jsx | 14 +++++++++++++- 2 files changed, 19 insertions(+), 7 deletions(-) diff --git a/src/screens/Template/JobTemplateDetail/JobTemplateDetail.jsx b/src/screens/Template/JobTemplateDetail/JobTemplateDetail.jsx index a6792b6959..f7acaf5dee 100644 --- a/src/screens/Template/JobTemplateDetail/JobTemplateDetail.jsx +++ b/src/screens/Template/JobTemplateDetail/JobTemplateDetail.jsx @@ -5,12 +5,12 @@ import { CardBody, Button, TextList, TextListItem, TextListItemVariants, TextLis import styled from 'styled-components'; import { t } from '@lingui/macro'; -import ContentError from '../../../components/ContentError'; -import ContentLoading from '../../../components/ContentLoading'; -import { ChipGroup, Chip } from '../../../components/Chip'; -import { DetailList, Detail } from '../../../components/DetailList'; -import { JobTemplatesAPI } from '../../../api'; -import { toTitleCase } from '../../../util/strings'; +import ContentError from '@components/ContentError'; +import ContentLoading from '@components/ContentLoading'; +import { ChipGroup, Chip } from '@components/Chip'; +import { DetailList, Detail } from '@components/DetailList'; +import { JobTemplatesAPI } from '@api'; +import { toTitleCase } from '@util/strings'; const ButtonGroup = styled.div` display: flex; diff --git a/src/screens/Template/JobTemplateDetail/JobTemplateDetail.test.jsx b/src/screens/Template/JobTemplateDetail/JobTemplateDetail.test.jsx index 59f8f9e5a2..90489d942b 100644 --- a/src/screens/Template/JobTemplateDetail/JobTemplateDetail.test.jsx +++ b/src/screens/Template/JobTemplateDetail/JobTemplateDetail.test.jsx @@ -1,6 +1,9 @@ import React from 'react'; -import { mountWithContexts, waitForElement } from '../../../../testUtils/enzymeHelpers'; +import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; import JobTemplateDetail, { _JobTemplateDetail } from './JobTemplateDetail'; +import { JobTemplatesAPI } from '@api'; + +jest.mock('@api'); describe('', () => { const template = { @@ -38,6 +41,14 @@ describe('', () => { const readInstanceGroups = jest.spyOn(_JobTemplateDetail.prototype, 'readInstanceGroups'); + beforeEach(() => { + JobTemplatesAPI.readInstanceGroups.mockResolvedValue(mockInstanceGroups); + }); + + afterEach(() => { + jest.clearAllMocks(); + }); + test('initially renders succesfully', () => { const wrapper = mountWithContexts( ', () => { await waitForElement(wrapper, 'JobTemplateDetail', (el) => el.state('hasContentLoading') === true); expect(readInstanceGroups).toHaveBeenCalled(); await waitForElement(wrapper, 'JobTemplateDetail', (el) => el.state('hasContentLoading') === false); + expect(JobTemplatesAPI.readInstanceGroups).toHaveBeenCalledTimes(1); done(); }); test('Edit button is absent when user does not have edit privilege', async (done) => {