Skip to content

Commit abe3086

Browse files
authored
fix: Update and expand /client tests (#1169)
* Remove outdated App.test.jsx and TestRun.test.jsx * Adds CandidateReview.e2e.test.js * Adds Datamanagement.e2e.test.js * Adds Reports.e2e.test.js * Adds TestPlanVersions.e2e.test.js * Adds TestQueue.e2e.test.js * Adds TestReview.e2e.test.js * Adds TestRun.e2e.test.js * Adds UserSettings.e2e.test.js
1 parent 8e328c5 commit abe3086

30 files changed

+1205
-9173
lines changed

client/components/TestRun/Heading.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -120,13 +120,13 @@ const TestRunHeading = ({
120120
<div className="test-info-wrapper">
121121
<div
122122
className="test-info-entity apg-example-name"
123-
data-test="apg-example-name"
123+
data-testid="apg-example-name"
124124
>
125125
<div className="info-label">
126126
<b>Test Plan:</b> {testPlanTitle}
127127
</div>
128128
</div>
129-
<div className="test-info-entity at-browser" data-test="at-browser">
129+
<div className="test-info-entity at-browser" data-testid="at-browser">
130130
<div className="at-browser-row">
131131
<div className="info-label">
132132
<b>AT:</b> {at}

client/components/TestRun/index.jsx

+1-1
Original file line numberDiff line numberDiff line change
@@ -992,7 +992,7 @@ const TestRun = () => {
992992

993993
return (
994994
<>
995-
<h1 ref={titleRef} data-test="testing-task" tabIndex={-1}>
995+
<h1 ref={titleRef} data-testid="testing-task" tabIndex={-1}>
996996
<span className="task-label">Test {currentTest.seq}:</span>
997997
{currentTest.title}
998998
</h1>

client/components/UserSettings/UserSettings.jsx

+11-10
Original file line numberDiff line numberDiff line change
@@ -67,12 +67,12 @@ const UserSettings = () => {
6767

6868
return (
6969
<Container id="main" as="main" tabIndex="-1">
70-
<Container fluid data-test="user-settings-contents">
70+
<Container fluid>
7171
<Helmet>
7272
<title>Settings | ARIA-AT</title>
7373
</Helmet>
7474
<h1>Settings</h1>
75-
<section data-test="user-settings-authorized">
75+
<section>
7676
<h2>User Details</h2>
7777
<p>
7878
<a
@@ -87,30 +87,31 @@ const UserSettings = () => {
8787
<div aria-atomic="true" aria-live="polite">
8888
{savedAts.length > 0 ? (
8989
<div>
90-
<p>
90+
<p data-testid="testable-ats-status">
9191
You can currently test the following assistive technologies:
9292
</p>
9393
<ul>
9494
{ats
9595
.filter(({ id: atId }) => savedAts.includes(atId))
9696
.map(at => (
97-
<li key={at.id}>{at.name}</li>
97+
<li style={{ listStyle: 'disc' }} key={at.id}>
98+
{at.name}
99+
</li>
98100
))}
99101
</ul>
100102
</div>
101103
) : (
102-
<p>
103-
You currently are not configured to run any assistive
104-
technologies.
104+
<p data-testid="testable-ats-status">
105+
You have not yet selected any assistive technologies.
105106
</p>
106107
)}
107108
</div>
108109
<p>
109-
Submit the form below to update the assistive technologies you can
110-
test:
110+
Update the assistive technologies you can test by selecting from the
111+
options below:
111112
</p>
112113
<Form>
113-
<h3 id="at-group-label">ATs</h3>
114+
<h3 id="at-group-label">Assistive Technologies</h3>
114115
<Form.Group
115116
controlId="formBasicCheckbox"
116117
role="group"

client/components/common/AtAndBrowserDetailsModal/index.jsx

+2
Original file line numberDiff line numberDiff line change
@@ -346,6 +346,7 @@ const AtAndBrowserDetailsModal = ({
346346
onChange={handleAtVersionChange}
347347
isInvalid={isAtVersionError}
348348
required
349+
data-testid="at-browser-modal-select"
349350
>
350351
{['Select a Version', ...atVersions].map(item => (
351352
<option
@@ -545,6 +546,7 @@ const AtAndBrowserDetailsModal = ({
545546
onChange={handleBrowserVersionChange}
546547
isInvalid={isBrowserVersionError}
547548
required
549+
data-testid="at-browser-modal-input"
548550
/>
549551
{isBrowserVersionError && (
550552
<Form.Control.Feedback

client/package.json

-3
Original file line numberDiff line numberDiff line change
@@ -73,8 +73,6 @@
7373
"copy-webpack-plugin": "^11.0.0",
7474
"css-loader": "^6.11.0",
7575
"dotenv-webpack": "^8.1.0",
76-
"enzyme": "^3.11.0",
77-
"enzyme-adapter-react-16": "^1.15.8",
7876
"eslint": "^8.57.0",
7977
"eslint-config-prettier": "^8.10.0",
8078
"eslint-plugin-jest": "^27.9.0",
@@ -84,7 +82,6 @@
8482
"file-loader": "^6.0.0",
8583
"jest": "^29.7.0",
8684
"jest-environment-jsdom": "^29.7.0",
87-
"jest-enzyme": "^7.1.2",
8885
"prettier": "^2.8.8",
8986
"puppeteer": "^21.11.0",
9087
"storybook-addon-apollo-client": "^4.1.4",

client/tests/App.test.jsx

-25
This file was deleted.

client/tests/AssignTesterDropdown.test.jsx

+6
Original file line numberDiff line numberDiff line change
@@ -75,16 +75,19 @@ useMutation.mockImplementation(mutation => {
7575
const getMocks = (atKey, browserKey) => {
7676
const at = {
7777
nvda: {
78+
__typename: 'At',
7879
id: '2',
7980
name: 'NVDA',
8081
key: 'nvda'
8182
},
8283
jaws: {
84+
__typename: 'At',
8385
id: '1',
8486
name: 'JAWS',
8587
key: 'jaws'
8688
},
8789
voiceover_macos: {
90+
__typename: 'At',
8891
id: '3',
8992
name: 'VoiceOver for MacOS',
9093
key: 'voiceover_macos'
@@ -93,16 +96,19 @@ const getMocks = (atKey, browserKey) => {
9396

9497
const browser = {
9598
chrome: {
99+
__typename: 'Browser',
96100
id: '2',
97101
name: 'Chrome',
98102
key: 'chrome'
99103
},
100104
safari_macos: {
105+
__typename: 'Browser',
101106
id: '3',
102107
name: 'Safari for MacOS',
103108
key: 'safari_macos'
104109
},
105110
voiceover_macos: {
111+
__typename: 'Browser',
106112
id: '3',
107113
name: 'VoiceOver for MacOS',
108114
key: 'voiceover_macos'

client/tests/DataManagement.test.jsx

+2-64
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,10 @@
22
* @jest-environment jsdom
33
*/
44

5-
import React, { act } from 'react';
6-
import { render, renderHook, waitFor } from '@testing-library/react';
7-
import { InMemoryCache } from '@apollo/client';
8-
import { MockedProvider } from '@apollo/client/testing';
9-
import { BrowserRouter } from 'react-router-dom';
5+
import { act } from 'react';
6+
import { renderHook } from '@testing-library/react';
107
import '@testing-library/jest-dom';
11-
import DataManagement from '../components/DataManagement';
128

13-
// eslint-disable-next-line jest/no-mocks-import
14-
import { DATA_MANAGEMENT_PAGE_POPULATED_MOCK_DATA } from './__mocks__/GraphQLMocks';
159
import {
1610
useDataManagementTableFiltering,
1711
useDataManagementTableSorting,
@@ -24,62 +18,6 @@ import {
2418
DATA_MANAGEMENT_TABLE_SORT_OPTIONS
2519
} from '../components/DataManagement/utils';
2620
import { TABLE_SORT_ORDERS } from '../components/common/SortableTableHeader';
27-
import { AriaLiveRegionProvider } from '../components/providers/AriaLiveRegionProvider';
28-
29-
const setup = (mocks = []) => {
30-
return render(
31-
<BrowserRouter>
32-
<AriaLiveRegionProvider>
33-
<MockedProvider
34-
mocks={mocks}
35-
cache={new InMemoryCache({ addTypename: false })}
36-
>
37-
<DataManagement />
38-
</MockedProvider>
39-
</AriaLiveRegionProvider>
40-
</BrowserRouter>
41-
);
42-
};
43-
44-
describe('Data Management page', () => {
45-
let wrapper;
46-
47-
beforeEach(() => {
48-
wrapper = setup(DATA_MANAGEMENT_PAGE_POPULATED_MOCK_DATA);
49-
});
50-
51-
it('renders loading state on initialization', async () => {
52-
const { getByTestId } = wrapper;
53-
const element = getByTestId('page-status');
54-
55-
expect(element).toBeTruthy();
56-
expect(element).toHaveTextContent('Loading');
57-
});
58-
59-
it('renders Status Summary component', async () => {
60-
// allow page time to load
61-
await waitFor(() => new Promise(res => setTimeout(res, 0)));
62-
63-
const { queryAllByText } = wrapper;
64-
const statusSummaryElement = queryAllByText(/Test Plans Status Summary/i);
65-
const testPlanElement = queryAllByText(/Test Plan/i);
66-
const coveredAtElement = queryAllByText(/Covered AT/i);
67-
const overallStatusElement = queryAllByText(/Overall Status/i);
68-
const rdElement = queryAllByText(/R&D Version/i);
69-
const draftElement = queryAllByText(/Draft Review/i);
70-
const candidateElement = queryAllByText(/Candidate Review/i);
71-
const recommendedElement = queryAllByText(/Recommended Version/i);
72-
73-
expect(statusSummaryElement.length).toBeGreaterThanOrEqual(1);
74-
expect(testPlanElement.length).toBeGreaterThanOrEqual(1);
75-
expect(coveredAtElement.length).toBeGreaterThanOrEqual(1);
76-
expect(overallStatusElement.length).toBeGreaterThanOrEqual(1);
77-
expect(rdElement.length).toBeGreaterThanOrEqual(1);
78-
expect(draftElement.length).toBeGreaterThanOrEqual(1);
79-
expect(candidateElement.length).toBeGreaterThanOrEqual(1);
80-
expect(recommendedElement.length).toBeGreaterThanOrEqual(1);
81-
});
82-
});
8321

8422
const testPlans = [
8523
{ title: 'Test A', directory: 'dirA', id: '1' },

client/tests/TestRun.test.jsx

-49
This file was deleted.

client/tests/UserSettings.test.jsx

-49
This file was deleted.

0 commit comments

Comments
 (0)