Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Jest test matchers for jsdom #5011

Merged
merged 2 commits into from
May 28, 2024
Merged

Add Jest test matchers for jsdom #5011

merged 2 commits into from
May 28, 2024

Conversation

36degrees
Copy link
Contributor

Include the @testing-library/jest-dom library which provides custom Jest matchers for asserting things about the state of the DOM, including things like what class an element has (toHaveClass), or the accessible description for an element (toHaveAccessibleDescription).

This as the first step in migrating our template tests from Cheerio to jsdom.

Part of #5010

Copy link

github-actions bot commented May 24, 2024

📋 Stats

File sizes

File Size
dist/govuk-frontend-development.min.css 113.37 KiB
dist/govuk-frontend-development.min.js 42.34 KiB
packages/govuk-frontend/dist/govuk/all.bundle.js 88.16 KiB
packages/govuk-frontend/dist/govuk/all.bundle.mjs 82.83 KiB
packages/govuk-frontend/dist/govuk/all.mjs 981 B
packages/govuk-frontend/dist/govuk/govuk-frontend-component.mjs 359 B
packages/govuk-frontend/dist/govuk/govuk-frontend.min.css 113.36 KiB
packages/govuk-frontend/dist/govuk/govuk-frontend.min.js 42.33 KiB
packages/govuk-frontend/dist/govuk/i18n.mjs 5.55 KiB
packages/govuk-frontend/dist/govuk/init.mjs 4.86 KiB

Modules

File Size (bundled) Size (minified)
all.mjs 78.45 KiB 40.31 KiB
accordion.mjs 22.71 KiB 12.85 KiB
button.mjs 5.98 KiB 2.69 KiB
character-count.mjs 22.4 KiB 9.92 KiB
checkboxes.mjs 5.83 KiB 2.83 KiB
error-summary.mjs 7.89 KiB 3.46 KiB
exit-this-page.mjs 17.1 KiB 9.26 KiB
header.mjs 4.46 KiB 2.6 KiB
notification-banner.mjs 6.26 KiB 2.62 KiB
password-input.mjs 15.15 KiB 7.25 KiB
radios.mjs 4.83 KiB 2.38 KiB
skip-link.mjs 4.39 KiB 2.18 KiB
tabs.mjs 10.13 KiB 6.11 KiB

View stats and visualisations on the review app


Action run for 182b60e

Comment on lines 20 to 21
"@testing-library/jest-dom": "^6.4.5",
"@types/testing-library__jest-dom": "^6.0.0",
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nitpick Given the jest.config.mjs is at the root of the repository, I think those two should go in the root package.json. That's also where jest and its plugins are listed as dependencies. I think things work at the moment because Node hoists packages to the root node_modules when it installs dependencies from workspaces.

Copy link
Member

@romaricpascal romaricpascal left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking forward to use the new matchers. I think you need to update where the new dependencies have been installed, though 😊

Include the @testing-library/jest-dom library which provides custom Jest matchers for asserting things about the state of the DOM, including things like what class an element has (`toHaveClass`), or the accessible description for an element (`toHaveAccessibleDescription`).
@govuk-design-system-ci govuk-design-system-ci temporarily deployed to govuk-frontend-pr-5011 May 28, 2024 09:56 Inactive
Copy link
Member

@romaricpascal romaricpascal left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Neat! And nice find on the ESLint plugin as well ⛵

@36degrees 36degrees merged commit c4701a7 into main May 28, 2024
48 checks passed
@36degrees 36degrees deleted the jsdom-test-matchers branch May 28, 2024 17:12
domoscargin pushed a commit that referenced this pull request Jun 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants