diff --git a/webpack/assets/javascripts/react_app/components/AuditsList/__tests__/ShowTaxonomyInline.test.js b/webpack/assets/javascripts/react_app/components/AuditsList/__tests__/ShowTaxonomyInline.test.js index 1ded04f6e9..aac3ed97c0 100644 --- a/webpack/assets/javascripts/react_app/components/AuditsList/__tests__/ShowTaxonomyInline.test.js +++ b/webpack/assets/javascripts/react_app/components/AuditsList/__tests__/ShowTaxonomyInline.test.js @@ -1,25 +1,45 @@ -import { shallowRenderComponentWithFixtures } from '../../../common/testHelpers'; +import React from 'react'; +import { render, screen } from '@testing-library/react'; +import '@testing-library/jest-dom'; + import ShowTaxonomyInline from '../ShowTaxonomyInline'; import { TaxonomyProps } from './AuditsList.fixtures'; -import { translate as __ } from '../../../common/I18n'; - -const OrgsFixtures = { - 'render organizations': { - displayLabel: __('Affected Organizations'), - items: TaxonomyProps.orgs, - }, -}; describe('ShowTaxonomyInline', () => { - describe('rendering', () => { - const components = shallowRenderComponentWithFixtures( - ShowTaxonomyInline, - OrgsFixtures + it('renders the display label', () => { + render( + + ); + + expect(screen.getByText('Affected Organizations')).toBeInTheDocument(); + }); + + it('renders a link for each taxonomy item', () => { + render(); + + const link = screen.getByRole('link', { name: 'testOrg' }); + + expect(link).toBeInTheDocument(); + expect(link).toHaveAttribute('href', '/organizations/1-testOrg/edit'); + expect(screen.getByRole('link', { name: 'testOrg2' })).toBeInTheDocument(); + }); + + it('renders a disabled taxonomy link', () => { + render(); + + expect(screen.getByRole('link', { name: 'testOrg2' })).toHaveAttribute( + 'aria-disabled', + 'true' ); - components.forEach(({ description, component }) => { - it(description, () => { - expect(component).toMatchSnapshot(); - }); - }); + }); + + it('renders no links when items are empty', () => { + render(); + + expect(screen.getByText('Affected Organizations')).toBeInTheDocument(); + expect(screen.queryByRole('link')).not.toBeInTheDocument(); }); }); diff --git a/webpack/assets/javascripts/react_app/components/AuditsList/__tests__/__snapshots__/ShowTaxonomyInline.test.js.snap b/webpack/assets/javascripts/react_app/components/AuditsList/__tests__/__snapshots__/ShowTaxonomyInline.test.js.snap deleted file mode 100644 index bddc6f3f42..0000000000 --- a/webpack/assets/javascripts/react_app/components/AuditsList/__tests__/__snapshots__/ShowTaxonomyInline.test.js.snap +++ /dev/null @@ -1,42 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`ShowTaxonomyInline rendering render organizations 1`] = ` - - - - Affected Organizations - - - - - - - - - -`;