-
Notifications
You must be signed in to change notification settings - Fork 273
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
fix: matcher Jest extensions #1537
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #1537 +/- ##
=======================================
Coverage 98.18% 98.18%
=======================================
Files 99 99
Lines 5888 5888
Branches 913 913
=======================================
Hits 5781 5781
Misses 107 107 ☔ View full report in Codecov by Sentry. |
@@ -31,26 +38,8 @@ declare global { | |||
} | |||
|
|||
// Explicit `@jest/globals` `expect` matchers. | |||
// @ts-ignore |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Wouldn't this effectively force all your users to set skipLibCheck: true
in tsconfig? 😔
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@erheron Do you have ideas how to resolve any other way?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
idk when testing against your repro repo the mentioned @ts-ignore
seems to work fine. Seems like it might just be suppring check for @jest/expect
existence which does not prevent it from using in test app with @jest/expect
.
Note: In order to trigger the @jest/globals
module typing you need to use expect
from @jest/globals
and not a global one:
Which BTW triggers a lot other TS errors when invoking tsc
but not from RNTL itself, but things like:
- node_modules/@types/node/buffer.d.ts
- node_modules/react-native/types/modules/globals.d.ts
🎉 This PR has been release in RNTL v12.4.1! |
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@testing-library/jest-native](https://github.com/testing-library/jest-native) | [`^5.4.2` -> `^5.4.3`](https://renovatebot.com/diffs/npm/@testing-library%2fjest-native/5.4.2/5.4.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@testing-library%2fjest-native/5.4.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@testing-library%2fjest-native/5.4.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@testing-library%2fjest-native/5.4.2/5.4.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@testing-library%2fjest-native/5.4.2/5.4.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@testing-library/react-native](https://callstack.github.io/react-native-testing-library) ([source](https://github.com/callstack/react-native-testing-library)) | [`^12.2.2` -> `^12.4.3`](https://renovatebot.com/diffs/npm/@testing-library%2freact-native/12.2.2/12.4.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@testing-library%2freact-native/12.4.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@testing-library%2freact-native/12.4.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@testing-library%2freact-native/12.2.2/12.4.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@testing-library%2freact-native/12.2.2/12.4.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>testing-library/jest-native (@​testing-library/jest-native)</summary> ### [`v5.4.3`](https://github.com/testing-library/jest-native/compare/v5.4.2...v5.4.3) [Compare Source](https://github.com/testing-library/jest-native/compare/v5.4.2...v5.4.3) </details> <details> <summary>callstack/react-native-testing-library (@​testing-library/react-native)</summary> ### [`v12.4.3`](https://github.com/callstack/react-native-testing-library/releases/tag/v12.4.3) [Compare Source](https://github.com/callstack/react-native-testing-library/compare/v12.4.2...v12.4.3) #### Other - docs: jsdoc for Jest matchers by [@​mdjastrzebski](https://github.com/mdjastrzebski) in [https://github.com/callstack/react-native-testing-library/pull/1548](https://github.com/callstack/react-native-testing-library/pull/1548) **Full Changelog**: callstack/react-native-testing-library@v12.4.2...v12.4.3 ### [`v12.4.2`](https://github.com/callstack/react-native-testing-library/releases/tag/v12.4.2) [Compare Source](https://github.com/callstack/react-native-testing-library/compare/v12.4.1...v12.4.2) #### What's Changed ##### Improvements - feat: add option to pass `contentSize` and `layoutMeasurement` when calling `scrollTo` by [@​j-piasecki](https://github.com/j-piasecki) in [https://github.com/callstack/react-native-testing-library/pull/1543](https://github.com/callstack/react-native-testing-library/pull/1543) ##### Other - chore: remove renovate by [@​mdjastrzebski](https://github.com/mdjastrzebski) in [https://github.com/callstack/react-native-testing-library/pull/1539](https://github.com/callstack/react-native-testing-library/pull/1539) - chore: add release it by [@​mdjastrzebski](https://github.com/mdjastrzebski) in [https://github.com/callstack/react-native-testing-library/pull/1546](https://github.com/callstack/react-native-testing-library/pull/1546) #### New Contributors - [@​j-piasecki](https://github.com/j-piasecki) made their first contribution in [https://github.com/callstack/react-native-testing-library/pull/1543](https://github.com/callstack/react-native-testing-library/pull/1543) **Full Changelog**: callstack/react-native-testing-library@v12.4.1...v12.4.2 ### [`v12.4.1`](https://github.com/callstack/react-native-testing-library/releases/tag/v12.4.1) [Compare Source](https://github.com/callstack/react-native-testing-library/compare/v12.4.0...v12.4.1) #### What's Changed ##### New things - RFC/feat: default accessibility roles by [@​mdjastrzebski](https://github.com/mdjastrzebski) in [https://github.com/callstack/react-native-testing-library/pull/1490](https://github.com/callstack/react-native-testing-library/pull/1490) ##### Fixes - chore: fix extend-expect.d.ts types by internalizing them by [@​mdjastrzebski](https://github.com/mdjastrzebski) in [https://github.com/callstack/react-native-testing-library/pull/1536](https://github.com/callstack/react-native-testing-library/pull/1536) - fix: matcher Jest extensions by [@​mdjastrzebski](https://github.com/mdjastrzebski) in [https://github.com/callstack/react-native-testing-library/pull/1537](https://github.com/callstack/react-native-testing-library/pull/1537) - fix: user event add target prop by [@​mdjastrzebski](https://github.com/mdjastrzebski) in [https://github.com/callstack/react-native-testing-library/pull/1538](https://github.com/callstack/react-native-testing-library/pull/1538) ##### Other - chore: update & check example packages by [@​mdjastrzebski](https://github.com/mdjastrzebski) in [https://github.com/callstack/react-native-testing-library/pull/1528](https://github.com/callstack/react-native-testing-library/pull/1528) - docs: spell-check some docs by [@​mdjastrzebski](https://github.com/mdjastrzebski) in [https://github.com/callstack/react-native-testing-library/pull/1529](https://github.com/callstack/react-native-testing-library/pull/1529) - docs: rewrite How should I query? guide by [@​mdjastrzebski](https://github.com/mdjastrzebski) in [https://github.com/callstack/react-native-testing-library/pull/1531](https://github.com/callstack/react-native-testing-library/pull/1531) - docs: remove beta status for User Event by [@​mdjastrzebski](https://github.com/mdjastrzebski) in [https://github.com/callstack/react-native-testing-library/pull/1532](https://github.com/callstack/react-native-testing-library/pull/1532) - chore: deps update 2023-11-27 by [@​mdjastrzebski](https://github.com/mdjastrzebski) in [https://github.com/callstack/react-native-testing-library/pull/1533](https://github.com/callstack/react-native-testing-library/pull/1533) **Full Changelog**: callstack/react-native-testing-library@v12.4.0...v12.4.1 ### [`v12.4.0`](https://github.com/callstack/react-native-testing-library/releases/tag/v12.4.0) [Compare Source](https://github.com/callstack/react-native-testing-library/compare/v12.3.3...v12.4.0) #### What's Changed ### Features - Built-in Jest matchers - [documentation](https://callstack.github.io/react-native-testing-library/docs/jest-matchers) - [migration guide from legacy Jest Native matchers](https://callstack.github.io/react-native-testing-library/docs/migration-jest-native) ### Contributors for this feature 👏👏👏 - `toHaveTextContent` matcher [#​1461](https://github.com/callstack/react-native-testing-library/issues/1461) by [@​mdjastrzebski](https://github.com/mdjastrzebski) - `toBeEmptyElement` matcher [#​1462](https://github.com/callstack/react-native-testing-library/issues/1462) by [@​kyawthura-gg](https://github.com/kyawthura-gg) - `toHaveDisplayValue` matcher [#​1463](https://github.com/callstack/react-native-testing-library/issues/1463) by [@​jaworek](https://github.com/jaworek) & [@​mdjastrzebski](https://github.com/mdjastrzebski) - `toBeVisible` matcher [#​1465](https://github.com/callstack/react-native-testing-library/issues/1465) by [@​thiagobrez](https://github.com/thiagobrez) - `toBeEnabled` & `toBeDisabled` matchers [#​1469](https://github.com/callstack/react-native-testing-library/issues/1469) by [@​jaworek](https://github.com/jaworek) - `toHaveProp` matcher [#​1477](https://github.com/callstack/react-native-testing-library/issues/1477) by [@​AntoineThibi](https://github.com/AntoineThibi) - `toBeChecked` & `toBePartiallyChecked` matchers [#​1479](https://github.com/callstack/react-native-testing-library/issues/1479) by [@​kyawthura-gg](https://github.com/kyawthura-gg) - `toHaveStyle` matcher [#​1487](https://github.com/callstack/react-native-testing-library/issues/1487) by [@​marcinkornek](https://github.com/marcinkornek) - `toBeSelected` matcher [#​1488](https://github.com/callstack/react-native-testing-library/issues/1488) by [@​AntoineThibi](https://github.com/AntoineThibi) - `toBeBusy` matcher [#​1493](https://github.com/callstack/react-native-testing-library/issues/1493) by [@​hduprat](https://github.com/hduprat) - `toContainElement` matcher [#​1495](https://github.com/callstack/react-native-testing-library/issues/1495) by [@​siepra](https://github.com/siepra) - `toHaveAccessibilityValue` matcher [#​1496](https://github.com/callstack/react-native-testing-library/issues/1496) by [@​tarunrajput](https://github.com/tarunrajput) - `toBeExpanded` & `toBeCollapsed` matchers [#​1497](https://github.com/callstack/react-native-testing-library/issues/1497) by [@​siepra](https://github.com/siepra) - `toHaveAccessibleName` matcher [#​1509](https://github.com/callstack/react-native-testing-library/issues/1509) by [@​anishamalde](https://github.com/anishamalde) - Special thanks to [@​pierrezimmermannbam](https://github.com/pierrezimmermannbam) for helping with code reviews! **Full Changelog**: callstack/react-native-testing-library@v12.3.3...v12.4.0 ### [`v12.3.3`](https://github.com/callstack/react-native-testing-library/releases/tag/v12.3.3) [Compare Source](https://github.com/callstack/react-native-testing-library/compare/v12.3.2...v12.3.3) #### What's Changed ##### Features: - feat: toHaveAccessibleName matcher by [@​anishamalde](https://github.com/anishamalde) in [https://github.com/callstack/react-native-testing-library/pull/1509](https://github.com/callstack/react-native-testing-library/pull/1509) (not yet public, will be exposed publically in v12.4.0) ##### Fixes - fix: change broken hyperlink in README.md by [@​jovanimal](https://github.com/jovanimal) in [https://github.com/callstack/react-native-testing-library/pull/1520](https://github.com/callstack/react-native-testing-library/pull/1520) ##### Other improvements & chores - docs: Jest matchers docs by [@​mdjastrzebski](https://github.com/mdjastrzebski) in [https://github.com/callstack/react-native-testing-library/pull/1506](https://github.com/callstack/react-native-testing-library/pull/1506) - chore: modern yarn (4.0) by [@​mdjastrzebski](https://github.com/mdjastrzebski) in [https://github.com/callstack/react-native-testing-library/pull/1517](https://github.com/callstack/react-native-testing-library/pull/1517) - chore: enable Yarn 4 on CI by [@​mdjastrzebski](https://github.com/mdjastrzebski) in [https://github.com/callstack/react-native-testing-library/pull/1525](https://github.com/callstack/react-native-testing-library/pull/1525) - chore: expose Jest Native exports by [@​mdjastrzebski](https://github.com/mdjastrzebski) in [https://github.com/callstack/react-native-testing-library/pull/1522](https://github.com/callstack/react-native-testing-library/pull/1522) - Dependabot/npm and yarn/callstack/eslint config 14.0.0 by [@​mdjastrzebski](https://github.com/mdjastrzebski) in [https://github.com/callstack/react-native-testing-library/pull/1526](https://github.com/callstack/react-native-testing-library/pull/1526) #### New Contributors - [@​jovanimal](https://github.com/jovanimal) made their first contribution in [https://github.com/callstack/react-native-testing-library/pull/1520](https://github.com/callstack/react-native-testing-library/pull/1520) - [@​anishamalde](https://github.com/anishamalde) made their first contribution in [https://github.com/callstack/react-native-testing-library/pull/1509](https://github.com/callstack/react-native-testing-library/pull/1509) **Full Changelog**: callstack/react-native-testing-library@v12.3.2...v12.3.3 ### [`v12.3.2`](https://github.com/callstack/react-native-testing-library/releases/tag/v12.3.2) [Compare Source](https://github.com/callstack/react-native-testing-library/compare/v12.3.1...v12.3.2) #### What's Changed Improvements: - Adds typedefs for pure by [@​chriserickson](https://github.com/chriserickson) in [https://github.com/callstack/react-native-testing-library/pull/1516](https://github.com/callstack/react-native-testing-library/pull/1516) #### New Contributors - [@​chriserickson](https://github.com/chriserickson) made their first contribution in [https://github.com/callstack/react-native-testing-library/pull/1516](https://github.com/callstack/react-native-testing-library/pull/1516) **Full Changelog**: callstack/react-native-testing-library@v12.3.1...v12.3.2 ### [`v12.3.1`](https://github.com/callstack/react-native-testing-library/releases/tag/v12.3.1) [Compare Source](https://github.com/callstack/react-native-testing-library/compare/v12.3.0...v12.3.1) #### What's Changed ### Features - UserEvent `scrollBy` [@​siepra](https://github.com/siepra) in [https://github.com/callstack/react-native-testing-library/pull/1445](https://github.com/callstack/react-native-testing-library/pull/1445) ### Fixes - fix: properly manage IS_REACT_ACT_ENVIRONMENT in UserEvent by [@​pierrezimmermannbam](https://github.com/pierrezimmermannbam) in [https://github.com/callstack/react-native-testing-library/pull/1491](https://github.com/callstack/react-native-testing-library/pull/1491) #### New Contributors - [@​marcinkornek](https://github.com/marcinkornek) made their first contribution in [https://github.com/callstack/react-native-testing-library/pull/1487](https://github.com/callstack/react-native-testing-library/pull/1487) - [@​meatnordrink](https://github.com/meatnordrink) made their first contribution in [https://github.com/callstack/react-native-testing-library/pull/1494](https://github.com/callstack/react-native-testing-library/pull/1494) **Full Changelog**: callstack/react-native-testing-library@v12.3.0...v12.3.1 ### [`v12.3.0`](https://github.com/callstack/react-native-testing-library/releases/tag/v12.3.0) [Compare Source](https://github.com/callstack/react-native-testing-library/compare/v12.2.2...v12.3.0) #### Features - ARIA props (`role` & `aria-*`) support: - feat: support aria-hidden prop by [@​mdjastrzebski](https://github.com/mdjastrzebski) in [https://github.com/callstack/react-native-testing-library/pull/1474](https://github.com/callstack/react-native-testing-library/pull/1474) - feat: support `role` prop by [@​mdjastrzebski](https://github.com/mdjastrzebski) in [https://github.com/callstack/react-native-testing-library/pull/1476](https://github.com/callstack/react-native-testing-library/pull/1476) - feat: support `aria-label` and `aria-labelledby` props by [@​mdjastrzebski](https://github.com/mdjastrzebski) in [https://github.com/callstack/react-native-testing-library/pull/1475](https://github.com/callstack/react-native-testing-library/pull/1475) - feat: `aria-*` state props by [@​mdjastrzebski](https://github.com/mdjastrzebski) in [https://github.com/callstack/react-native-testing-library/pull/1478](https://github.com/callstack/react-native-testing-library/pull/1478) - feat: `aria-modal` support by [@​mdjastrzebski](https://github.com/mdjastrzebski) in [https://github.com/callstack/react-native-testing-library/pull/1481](https://github.com/callstack/react-native-testing-library/pull/1481) - feat: `aria-value*` props support by [@​mdjastrzebski](https://github.com/mdjastrzebski) in [https://github.com/callstack/react-native-testing-library/pull/1480](https://github.com/callstack/react-native-testing-library/pull/1480) - Jest Native matcher migration to RNTL (work in progress): - feature: Jest matchers core by [@​mdjastrzebski](https://github.com/mdjastrzebski) in [https://github.com/callstack/react-native-testing-library/pull/1454](https://github.com/callstack/react-native-testing-library/pull/1454) - feat: add Jest matchers utils by [@​mdjastrzebski](https://github.com/mdjastrzebski) in [https://github.com/callstack/react-native-testing-library/pull/1464](https://github.com/callstack/react-native-testing-library/pull/1464) - feat: `toBeEmptyElement` matcher by [@​kyawthura-gg](https://github.com/kyawthura-gg) in [https://github.com/callstack/react-native-testing-library/pull/1462](https://github.com/callstack/react-native-testing-library/pull/1462) - feat: `toHaveDisplayValue` matcher by [@​mdjastrzebski](https://github.com/mdjastrzebski) in [https://github.com/callstack/react-native-testing-library/pull/1463](https://github.com/callstack/react-native-testing-library/pull/1463) - feat: `toHaveTextContent()` matcher by [@​mdjastrzebski](https://github.com/mdjastrzebski) in [https://github.com/callstack/react-native-testing-library/pull/1461](https://github.com/callstack/react-native-testing-library/pull/1461) - feat: `toBeVisible` matcher by [@​thiagobrez](https://github.com/thiagobrez) in [https://github.com/callstack/react-native-testing-library/pull/1465](https://github.com/callstack/react-native-testing-library/pull/1465) - feat: `toBeDisabled` matcher by [@​jaworek](https://github.com/jaworek) in [https://github.com/callstack/react-native-testing-library/pull/1469](https://github.com/callstack/react-native-testing-library/pull/1469) - feat: `toHaveProp` matcher by [@​AntoineThibi](https://github.com/AntoineThibi) in [https://github.com/callstack/react-native-testing-library/pull/1477](https://github.com/callstack/react-native-testing-library/pull/1477) - feat: `toBeChecked` & `toBePartiallyChecked` matcher by [@​kyawthura-gg](https://github.com/kyawthura-gg) in [https://github.com/callstack/react-native-testing-library/pull/1479](https://github.com/callstack/react-native-testing-library/pull/1479) Note: Jest matchers are work in progress and haven't yet been officially released. You can track progress of this initiative in [#​1468](https://github.com/callstack/react-native-testing-library/issues/1468). #### New Contributors - [@​M-Tilley-SA](https://github.com/M-Tilley-SA) made their first contribution in [https://github.com/callstack/react-native-testing-library/pull/1460](https://github.com/callstack/react-native-testing-library/pull/1460) - [@​kyawthura-gg](https://github.com/kyawthura-gg) made their first contribution in [https://github.com/callstack/react-native-testing-library/pull/1462](https://github.com/callstack/react-native-testing-library/pull/1462) - [@​friederbluemle](https://github.com/friederbluemle) made their first contribution in [https://github.com/callstack/react-native-testing-library/pull/1470](https://github.com/callstack/react-native-testing-library/pull/1470) - [@​thiagobrez](https://github.com/thiagobrez) made their first contribution in [https://github.com/callstack/react-native-testing-library/pull/1465](https://github.com/callstack/react-native-testing-library/pull/1465) - [@​AntoineThibi](https://github.com/AntoineThibi) made their first contribution in [https://github.com/callstack/react-native-testing-library/pull/1477](https://github.com/callstack/react-native-testing-library/pull/1477) **Full Changelog**: callstack/react-native-testing-library@v12.2.2...v12.3.0 </details> --- ### Configuration 📅 **Schedule**: Branch creation - "before 4am on Monday" in timezone America/Los_Angeles, Automerge - "after 5pm,every weekend" in timezone America/Los_Angeles. 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://github.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/valora-inc/wallet). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4xMjEuMCIsInVwZGF0ZWRJblZlciI6IjM3LjEyMS4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Summary
Clean up TS issues reported in #1534 without duplicating type declarations.
This solution is modeled on approach used in Jest Expect package: https://github.com/jestjs/jest/blob/main/packages/jest-expect/src/types.ts
Test plan