-
-
Notifications
You must be signed in to change notification settings - Fork 6.5k
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(jest-mock): do not restore mocks when jest.resetAllMocks()
is called
#13866
fix(jest-mock): do not restore mocks when jest.resetAllMocks()
is called
#13866
Conversation
packages/jest-mock/src/index.ts
Outdated
} | ||
|
||
restoreAllMocks(): void { | ||
this._spyState.forEach(restore => restore()); | ||
this._mockState = new WeakMap(); |
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.
Yeah, I think clearing makes sense
I just hit this bug as well. Let me know if I can help in anyway (testing, docs, code, etc.)! ❤️ |
Thanks. I just opened this PR yesterday. Waiting for #13867 to land first. So I could rebase and finish here (; |
@@ -1215,30 +1215,6 @@ describe('moduleMocker', () => { | |||
expect(fn.getMockName()).toBe('jest.fn()'); | |||
}); | |||
|
|||
test('after mock reset, the object should return to its original value', () => { |
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.
Both tests are moved below and extended
Just checked the case reported in #13808 (comment). Fails as described on |
private _attachMockImplementation<T extends Function>( | ||
mock: Mock<UnknownFunction>, | ||
original: T, |
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.
extends Function
is used here, because of @typescript-eslint/ban-types
. It disallows using Function
type directly, but is fine to see extends
. In a way that makes sense, or?
} | ||
|
||
restoreAllMocks(): void { | ||
this._mockState = new WeakMap(); | ||
this._spyState.forEach(restore => restore()); | ||
this.clearAllMocks(); |
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.
Other idea was to call this.resetAllMocks()
here instead of this.clearAllMocks()
. Looks like resetting implementation in this case is just waste of time, because that implementation will be discarded in next lines.
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.
👍
A bug with resetAllMocks has been fixed in jest in jestjs/jest#13866 It seems like we were relying on it.
A bug with resetAllMocks has been fixed in jest in jestjs/jest#13866 It seems like we were relying on it.
A bug with resetAllMocks has been fixed in jest in jestjs/jest#13866 It seems like we were relying on it.
A bug with resetAllMocks has been fixed in jest in jestjs/jest#13866 It seems like we were relying on it.
A bug with resetAllMocks has been fixed in jest in jestjs/jest#13866 It seems like we were relying on it.
<h3>Snyk has created this PR to upgrade multiple dependencies.</h3> 👯 The following dependencies are linked and will therefore be updated together. </br></br> :information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project. </br></br> Name | Versions | Released on :-------------|:-------------|:------------- **babel-jest**</br>from 29.4.0 to 29.4.3 | **3 versions** ahead of your current version | **a month ago**</br>on 2023-02-15 **jest**</br>from 29.4.0 to 29.4.3 | **3 versions** ahead of your current version | **a month ago**</br>on 2023-02-15 <details> <summary><b>Release notes</b></summary> <br/> <details> <summary>Package name: <b>babel-jest</b></summary> <ul> <li> <b>29.4.3</b> - <a href="https://snyk.io/redirect/github/facebook/jest/releases/tag/v29.4.3">2023-02-15</a></br><h2>Features</h2> <ul> <li><code>[expect]</code> Update <code>toThrow()</code> to be able to use error <code>cause</code>s (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13606" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13606/hovercard">#13606</a>)</li> <li><code>[jest-core]</code> allow to use <code>workerIdleMemoryLimit</code> with only 1 worker or <code>runInBand</code> option (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13846" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13846/hovercard">#13846</a>)</li> <li><code>[jest-message-util]</code> Add support for <a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error/cause" rel="nofollow">error <code>cause</code>s</a> (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13868" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13868/hovercard">#13868</a> & <a href="https://snyk.io/redirect/github/facebook/jest/pull/13912" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13912/hovercard">#13912</a>)</li> <li><code>[jest-runtime]</code> Revert <code>import assertions</code> for JSON modules as it's been relegated to Stage 2 (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13911" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13911/hovercard">#13911</a>)</li> </ul> <h2>Fixes</h2> <ul> <li><code>[@ jest/expect-utils]</code> <code>subsetEquality</code> should consider also an object's inherited string keys (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13824" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13824/hovercard">#13824</a>)</li> <li><code>[jest-mock]</code> Clear mock state when <code>jest.restoreAllMocks()</code> is called (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13867" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13867/hovercard">#13867</a>)</li> <li><code>[jest-mock]</code> Prevent <code>mockImplementationOnce</code> and <code>mockReturnValueOnce</code> bleeding into <code>withImplementation</code> (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13888" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13888/hovercard">#13888</a>)</li> <li><code>[jest-mock]</code> Do not restore mocks when <code>jest.resetAllMocks()</code> is called (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13866" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13866/hovercard">#13866</a>)</li> </ul> <h2>New Contributors</h2> <ul> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/brodo/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/brodo">@ brodo</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1574461036" data-permission-text="Title is private" data-url="jestjs/jest#13868" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13868/hovercard" href="https://snyk.io/redirect/github/facebook/jest/pull/13868">#13868</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/DannyNemer/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/DannyNemer">@ DannyNemer</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1577012341" data-permission-text="Title is private" data-url="jestjs/jest#13878" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13878/hovercard" href="https://snyk.io/redirect/github/facebook/jest/pull/13878">#13878</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ghusse/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/ghusse">@ ghusse</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1563899430" data-permission-text="Title is private" data-url="jestjs/jest#13846" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13846/hovercard" href="https://snyk.io/redirect/github/facebook/jest/pull/13846">#13846</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/broofa/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/broofa">@ broofa</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1584573240" data-permission-text="Title is private" data-url="jestjs/jest#13911" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13911/hovercard" href="https://snyk.io/redirect/github/facebook/jest/pull/13911">#13911</a></li> </ul> <p><strong>Full Changelog</strong>: <a class="commit-link" href="https://snyk.io/redirect/github/facebook/jest/compare/v29.4.2...v29.4.3"><tt>v29.4.2...v29.4.3</tt></a></p> </li> <li> <b>29.4.2</b> - <a href="https://snyk.io/redirect/github/facebook/jest/releases/tag/v29.4.2">2023-02-07</a></br><h2>Features</h2> <ul> <li><code>[@ jest/core]</code> Instrument significant lifecycle events with <a href="https://nodejs.org/docs/latest-v16.x/api/perf_hooks.html#performancemarkname-options" rel="nofollow"><code>performance.mark()</code></a> (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13859" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13859/hovercard">#13859</a>)</li> </ul> <h2>Fixes</h2> <ul> <li><code>[expect, @ jest/expect]</code> Provide type of <code>actual</code> as a generic argument to <code>Matchers</code> to allow better-typed extensions (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13848" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13848/hovercard">#13848</a>)</li> <li><code>[jest-circus]</code> Added explicit mention of test failing because <code>done()</code> is not being called in error message (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13847" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13847/hovercard">#13847</a>)</li> <li><code>[jest-runtime]</code> Handle CJS re-exports of node core modules from ESM (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13856" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13856/hovercard">#13856</a>)</li> <li><code>[jest-transform]</code> Downgrade <code>write-file-atomic</code> to v4 (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13853" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13853/hovercard">#13853</a>)</li> <li><code>[jest-worker]</code> Ignore IPC messages not intended for Jest (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13543" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13543/hovercard">#13543</a>)</li> </ul> <h2>Chore & Maintenance</h2> <ul> <li><code>[*]</code> make sure to exclude <code>.eslintcache</code> from published module (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13832" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13832/hovercard">#13832</a>)</li> <li><code>[docs]</code> Cleanup incorrect links in CHANGELOG.md (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13857" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13857/hovercard">#13857</a>)</li> </ul> <h2>New Contributors</h2> <ul> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/benjaminjkraft/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/benjaminjkraft">@ benjaminjkraft</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1565086384" data-permission-text="Title is private" data-url="jestjs/jest#13848" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13848/hovercard" href="https://snyk.io/redirect/github/facebook/jest/pull/13848">#13848</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/LinusU/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/LinusU">@ LinusU</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1429918882" data-permission-text="Title is private" data-url="jestjs/jest#13543" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13543/hovercard" href="https://snyk.io/redirect/github/facebook/jest/pull/13543">#13543</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/SuperSodaSea/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/SuperSodaSea">@ SuperSodaSea</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1570108297" data-permission-text="Title is private" data-url="jestjs/jest#13857" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13857/hovercard" href="https://snyk.io/redirect/github/facebook/jest/pull/13857">#13857</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/kowalski/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/kowalski">@ kowalski</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1570043142" data-permission-text="Title is private" data-url="jestjs/jest#13856" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13856/hovercard" href="https://snyk.io/redirect/github/facebook/jest/pull/13856">#13856</a></li> </ul> <p><strong>Full Changelog</strong>: <a class="commit-link" href="https://snyk.io/redirect/github/facebook/jest/compare/v29.4.1...v29.4.2"><tt>v29.4.1...v29.4.2</tt></a></p> </li> <li> <b>29.4.1</b> - <a href="https://snyk.io/redirect/github/facebook/jest/releases/tag/v29.4.1">2023-01-26</a></br><h2>Features</h2> <ul> <li><code>[expect, jest-circus, @ jest/types]</code> Implement <code>numPassingAsserts</code> of testResults to track the number of passing asserts in a test (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13795" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13795/hovercard">#13795</a>)</li> <li><code>[jest-core]</code> Add newlines to JSON output (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13817" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13817/hovercard">#13817</a>)</li> <li><code>[@ jest/reporters]</code> Automatic log folding in GitHub Actions Reporter (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13626" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13626/hovercard">#13626</a>)</li> </ul> <h2>Fixes</h2> <ul> <li><code>[@ jest/expect-utils]</code> <code>toMatchObject</code> diffs should include <code>Symbol</code> properties (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13810" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13810/hovercard">#13810</a>)</li> <li><code>[jest-runtime]</code> Handle missing <code>replaceProperty</code> (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13823" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13823/hovercard">#13823</a>)</li> <li><code>[@ jest/types]</code> Add partial support for <code>done</code> callbacks in typings of <code>each</code> (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13756" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13756/hovercard">#13756</a>)</li> </ul> <h2>New Contributors</h2> <ul> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/jessevanassen/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/jessevanassen">@ jessevanassen</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1556823163" data-permission-text="Title is private" data-url="jestjs/jest#13817" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13817/hovercard" href="https://snyk.io/redirect/github/facebook/jest/pull/13817">#13817</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ymqy/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/ymqy">@ ymqy</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1551728671" data-permission-text="Title is private" data-url="jestjs/jest#13795" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13795/hovercard" href="https://snyk.io/redirect/github/facebook/jest/pull/13795">#13795</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/MatteoH2O1999/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/MatteoH2O1999">@ MatteoH2O1999</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1455128768" data-permission-text="Title is private" data-url="jestjs/jest#13626" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13626/hovercard" href="https://snyk.io/redirect/github/facebook/jest/pull/13626">#13626</a></li> </ul> <p><strong>Full Changelog</strong>: <a class="commit-link" href="https://snyk.io/redirect/github/facebook/jest/compare/v29.4.0...v29.4.1"><tt>v29.4.0...v29.4.1</tt></a></p> </li> <li> <b>29.4.0</b> - <a href="https://snyk.io/redirect/github/facebook/jest/releases/tag/v29.4.0">2023-01-24</a></br><a href="https://snyk.io/redirect/github/facebook/jest/releases/tag/v29.4.0"> Read more </a> </li> </ul> from <a href="https://snyk.io/redirect/github/facebook/jest/releases">babel-jest GitHub release notes</a> </details> <details> <summary>Package name: <b>jest</b></summary> <ul> <li> <b>29.4.3</b> - <a href="https://snyk.io/redirect/github/facebook/jest/releases/tag/v29.4.3">2023-02-15</a></br><h2>Features</h2> <ul> <li><code>[expect]</code> Update <code>toThrow()</code> to be able to use error <code>cause</code>s (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13606" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13606/hovercard">#13606</a>)</li> <li><code>[jest-core]</code> allow to use <code>workerIdleMemoryLimit</code> with only 1 worker or <code>runInBand</code> option (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13846" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13846/hovercard">#13846</a>)</li> <li><code>[jest-message-util]</code> Add support for <a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error/cause" rel="nofollow">error <code>cause</code>s</a> (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13868" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13868/hovercard">#13868</a> & <a href="https://snyk.io/redirect/github/facebook/jest/pull/13912" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13912/hovercard">#13912</a>)</li> <li><code>[jest-runtime]</code> Revert <code>import assertions</code> for JSON modules as it's been relegated to Stage 2 (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13911" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13911/hovercard">#13911</a>)</li> </ul> <h2>Fixes</h2> <ul> <li><code>[@ jest/expect-utils]</code> <code>subsetEquality</code> should consider also an object's inherited string keys (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13824" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13824/hovercard">#13824</a>)</li> <li><code>[jest-mock]</code> Clear mock state when <code>jest.restoreAllMocks()</code> is called (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13867" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13867/hovercard">#13867</a>)</li> <li><code>[jest-mock]</code> Prevent <code>mockImplementationOnce</code> and <code>mockReturnValueOnce</code> bleeding into <code>withImplementation</code> (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13888" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13888/hovercard">#13888</a>)</li> <li><code>[jest-mock]</code> Do not restore mocks when <code>jest.resetAllMocks()</code> is called (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13866" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13866/hovercard">#13866</a>)</li> </ul> <h2>New Contributors</h2> <ul> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/brodo/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/brodo">@ brodo</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1574461036" data-permission-text="Title is private" data-url="jestjs/jest#13868" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13868/hovercard" href="https://snyk.io/redirect/github/facebook/jest/pull/13868">#13868</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/DannyNemer/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/DannyNemer">@ DannyNemer</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1577012341" data-permission-text="Title is private" data-url="jestjs/jest#13878" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13878/hovercard" href="https://snyk.io/redirect/github/facebook/jest/pull/13878">#13878</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ghusse/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/ghusse">@ ghusse</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1563899430" data-permission-text="Title is private" data-url="jestjs/jest#13846" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13846/hovercard" href="https://snyk.io/redirect/github/facebook/jest/pull/13846">#13846</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/broofa/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/broofa">@ broofa</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1584573240" data-permission-text="Title is private" data-url="jestjs/jest#13911" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13911/hovercard" href="https://snyk.io/redirect/github/facebook/jest/pull/13911">#13911</a></li> </ul> <p><strong>Full Changelog</strong>: <a class="commit-link" href="https://snyk.io/redirect/github/facebook/jest/compare/v29.4.2...v29.4.3"><tt>v29.4.2...v29.4.3</tt></a></p> </li> <li> <b>29.4.2</b> - <a href="https://snyk.io/redirect/github/facebook/jest/releases/tag/v29.4.2">2023-02-07</a></br><h2>Features</h2> <ul> <li><code>[@ jest/core]</code> Instrument significant lifecycle events with <a href="https://nodejs.org/docs/latest-v16.x/api/perf_hooks.html#performancemarkname-options" rel="nofollow"><code>performance.mark()</code></a> (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13859" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13859/hovercard">#13859</a>)</li> </ul> <h2>Fixes</h2> <ul> <li><code>[expect, @ jest/expect]</code> Provide type of <code>actual</code> as a generic argument to <code>Matchers</code> to allow better-typed extensions (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13848" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13848/hovercard">#13848</a>)</li> <li><code>[jest-circus]</code> Added explicit mention of test failing because <code>done()</code> is not being called in error message (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13847" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13847/hovercard">#13847</a>)</li> <li><code>[jest-runtime]</code> Handle CJS re-exports of node core modules from ESM (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13856" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13856/hovercard">#13856</a>)</li> <li><code>[jest-transform]</code> Downgrade <code>write-file-atomic</code> to v4 (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13853" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13853/hovercard">#13853</a>)</li> <li><code>[jest-worker]</code> Ignore IPC messages not intended for Jest (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13543" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13543/hovercard">#13543</a>)</li> </ul> <h2>Chore & Maintenance</h2> <ul> <li><code>[*]</code> make sure to exclude <code>.eslintcache</code> from published module (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13832" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13832/hovercard">#13832</a>)</li> <li><code>[docs]</code> Cleanup incorrect links in CHANGELOG.md (<a href="https://snyk.io/redirect/github/facebook/jest/pull/13857" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13857/hovercard">#13857</a>)</li> </ul> <h2>New Contributors</h2> <ul> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/benjaminjkraft/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/benjaminjkraft">@ benjaminjkraft</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1565086384" data-permission-text="Title is private" data-url="jestjs/jest#13848" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13848/hovercard" href="https://snyk.io/redirect/github/facebook/jest/pull/13848">#13848</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/LinusU/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/LinusU">@ LinusU</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1429918882" data-permission-text="Title is private" data-url="jestjs/jest#13543" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13543/hovercard" href="https://snyk.io/redirect/github/facebook/jest/pull/13543">#13543</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/SuperSodaSea/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/SuperSodaSea">@ SuperSodaSea</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1570108297" data-permission-text="Title is private" data-url="jestjs/jest#13857" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13857/hovercard" href="https://snyk.io/redirect/github/facebook/jest/pull/13857">#13857</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/kowalski/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/kowalski">@ kowalski</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1570043142" data-permission-text="Title is private" data-url="jestjs/jest#13856" data-hovercard-type="pull_request" data-hovercard-url="/jestjs/jest/pull/13856/hovercard" href="https://snyk.io/redirect/github/facebook/jest/pull/13856">#13856</a></li> </ul> <p><strong>Full Changelog</strong>: <a class="commit-link" href="https://snyk.io/redirect/github/facebook/jest/compare/v29.4.1...v29.4.2"><tt>v29.4.1...v29.4.2</tt></a></p> </li> <li> <b>29.4.1</b> - <a href="https://snyk.io/redirect/github/facebook/jest/releases/tag/v29.4.1">2023-01-26</a></br><a href="https://snyk.io/redirect/github/facebook/jest/releases/tag/v29.4.1"> Read more </a> </li> <li> <b>29.4.0</b> - <a href="https://snyk.io/redirect/github/facebook/jest/releases/tag/v29.4.0">2023-01-24</a></br><a href="https://snyk.io/redirect/github/facebook/jest/releases/tag/v29.4.0"> Read more </a> </li> </ul> from <a href="https://snyk.io/redirect/github/facebook/jest/releases">jest GitHub release notes</a> </details> </details> <details> <summary><b>Commit messages</b></summary> </br> <details> <summary>Package name: <b>babel-jest</b></summary> <ul> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/a49c88610e49a3242576160740a32a2fe11161e1">a49c886</a> v29.4.3</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/b08ecb4519cf177e05022e5e1c4f8c711b518dec">b08ecb4</a> chore: update changelog for release</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/0621b2b04c96788b12f8ddf7969ef445f1607844">0621b2b</a> Update toThrow() to be able to use Error.cause (#13606)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/af5d5a140b0c6ba386a4f88fefc5160ff6dffe02">af5d5a1</a> fix: added inherited string keys check on `subsetEquality` method (#13824)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/76ec2a46b1314ed1c6cd21997f96bdcf5cbdd11a">76ec2a4</a> Revert import assertions (#13911)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/5940bf4852a4aa3d27ae241049a548d59ca7c628">5940bf4</a> feat: allow to use workerIdleMemoryLimit with only 1 worker or runInBand option (#13846)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/c72962c689a6085e2554d314ecf2951a3d328f98">c72962c</a> docs: add missing admonitions in configuration page v29 (#13908)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/267fdbe2eaffd2c73b62d98c94c8cad6313d889d">267fdbe</a> feat(jest-message-util): improve detection of error causes (#13912)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/9432fc38105dec12ffc188b7ef25d734854aec52">9432fc3</a> fix(jest-mock): do not restore mocks when `jest.resetAllMocks()` is called (#13866)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/21a92711a22c7b6633909fd42a87499e179d80c2">21a9271</a> chore: do not use built version of circus in unit test (#13907)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/4af916f7d8b813993182999e28f56c20de9760ad">4af916f</a> chore: do not use deep imports in unit tests (#13905)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/dd4ea74888ae60b89d81702eda9caee47abaa7af">dd4ea74</a> docs: clean up Getting Started page (#13896)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/bed4891b0e5b614988e5a65fca29c4734cdb3c2e">bed4891</a> chore: retry cleanup in e2e tests (#13900)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/59cf4e39ba1c0e2675085a937d69131adea273d8">59cf4e3</a> docs: Fix typos in documentation for custom equality testers (#13878)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/f9f7d79c07e09be788fcb80db7ef662aa2a56836">f9f7d79</a> docs: add few missing admonitions to the CLI Options page (#13894)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/2818bf188617922b44fba8ac4893f86f9bda00a9">2818bf1</a> [jest-config] simplify filter-reduce (#13899)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/c81dfafc15982e8193d71d7b5a28d7e18d802d0f">c81dfaf</a> jest-each: simplify interpolation (#13898)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/ee1895fed4581a310b8225a96cab2f39f0adec9d">ee1895f</a> docs: add few missing admonitions to the Expect API page (#13892)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/fa1930d0ab04c7d4fecb0cffa347a758e9e556c2">fa1930d</a> docs: use `npm2yarn` in all versions of Getting Started page (#13893)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/4fbec418d2e0f0c9783b461e3bd6598059f51371">4fbec41</a> docs: add a note on difference between `toEqual` and `toStrictEqual` (#13891)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/dc0ac7580f9ab1a7e8aa108b206f1eaa2f8e2b15">dc0ac75</a> chore: retry yarn install in e2e tests (#13890)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/0d69a73169ac449f9690f9d8c6b4a9572363518b">0d69a73</a> fix(jest-mock): prevent `mockImplementationOnce` bleeding into `withImplementation` (#13888)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/d97b76098c5514ad27cc55186a1f07491b2250f0">d97b760</a> refactor(jest-mock): remove unused `specificReturnValues` property (#13889)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/94b73a2dd8bf8f6225769f2fe4a9322ac85483d8">94b73a2</a> chore(e2e): attempt to log better errors when running commands (#13881)</li> </ul> <a href="https://snyk.io/redirect/github/facebook/jest/compare/4bc0e8acaf990e6618a7bed1dca67760c20bb12a...a49c88610e49a3242576160740a32a2fe11161e1">Compare</a> </details> <details> <summary>Package name: <b>jest</b></summary> <ul> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/a49c88610e49a3242576160740a32a2fe11161e1">a49c886</a> v29.4.3</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/b08ecb4519cf177e05022e5e1c4f8c711b518dec">b08ecb4</a> chore: update changelog for release</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/0621b2b04c96788b12f8ddf7969ef445f1607844">0621b2b</a> Update toThrow() to be able to use Error.cause (#13606)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/af5d5a140b0c6ba386a4f88fefc5160ff6dffe02">af5d5a1</a> fix: added inherited string keys check on `subsetEquality` method (#13824)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/76ec2a46b1314ed1c6cd21997f96bdcf5cbdd11a">76ec2a4</a> Revert import assertions (#13911)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/5940bf4852a4aa3d27ae241049a548d59ca7c628">5940bf4</a> feat: allow to use workerIdleMemoryLimit with only 1 worker or runInBand option (#13846)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/c72962c689a6085e2554d314ecf2951a3d328f98">c72962c</a> docs: add missing admonitions in configuration page v29 (#13908)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/267fdbe2eaffd2c73b62d98c94c8cad6313d889d">267fdbe</a> feat(jest-message-util): improve detection of error causes (#13912)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/9432fc38105dec12ffc188b7ef25d734854aec52">9432fc3</a> fix(jest-mock): do not restore mocks when `jest.resetAllMocks()` is called (#13866)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/21a92711a22c7b6633909fd42a87499e179d80c2">21a9271</a> chore: do not use built version of circus in unit test (#13907)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/4af916f7d8b813993182999e28f56c20de9760ad">4af916f</a> chore: do not use deep imports in unit tests (#13905)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/dd4ea74888ae60b89d81702eda9caee47abaa7af">dd4ea74</a> docs: clean up Getting Started page (#13896)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/bed4891b0e5b614988e5a65fca29c4734cdb3c2e">bed4891</a> chore: retry cleanup in e2e tests (#13900)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/59cf4e39ba1c0e2675085a937d69131adea273d8">59cf4e3</a> docs: Fix typos in documentation for custom equality testers (#13878)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/f9f7d79c07e09be788fcb80db7ef662aa2a56836">f9f7d79</a> docs: add few missing admonitions to the CLI Options page (#13894)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/2818bf188617922b44fba8ac4893f86f9bda00a9">2818bf1</a> [jest-config] simplify filter-reduce (#13899)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/c81dfafc15982e8193d71d7b5a28d7e18d802d0f">c81dfaf</a> jest-each: simplify interpolation (#13898)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/ee1895fed4581a310b8225a96cab2f39f0adec9d">ee1895f</a> docs: add few missing admonitions to the Expect API page (#13892)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/fa1930d0ab04c7d4fecb0cffa347a758e9e556c2">fa1930d</a> docs: use `npm2yarn` in all versions of Getting Started page (#13893)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/4fbec418d2e0f0c9783b461e3bd6598059f51371">4fbec41</a> docs: add a note on difference between `toEqual` and `toStrictEqual` (#13891)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/dc0ac7580f9ab1a7e8aa108b206f1eaa2f8e2b15">dc0ac75</a> chore: retry yarn install in e2e tests (#13890)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/0d69a73169ac449f9690f9d8c6b4a9572363518b">0d69a73</a> fix(jest-mock): prevent `mockImplementationOnce` bleeding into `withImplementation` (#13888)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/d97b76098c5514ad27cc55186a1f07491b2250f0">d97b760</a> refactor(jest-mock): remove unused `specificReturnValues` property (#13889)</li> <li><a href="https://snyk.io/redirect/github/facebook/jest/commit/94b73a2dd8bf8f6225769f2fe4a9322ac85483d8">94b73a2</a> chore(e2e): attempt to log better errors when running commands (#13881)</li> </ul> <a href="https://snyk.io/redirect/github/facebook/jest/compare/4bc0e8acaf990e6618a7bed1dca67760c20bb12a...a49c88610e49a3242576160740a32a2fe11161e1">Compare</a> </details> </details> <hr/> **Note:** *You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.* For more information: <img src="https://api.segment.io/v1/pixel/track?data=eyJ3cml0ZUtleSI6InJyWmxZcEdHY2RyTHZsb0lYd0dUcVg4WkFRTnNCOUEwIiwiYW5vbnltb3VzSWQiOiI0OWI1MDA4MC1lNjEzLTQ0NGItYmI4Yy04MTk1YjYwNDRkOTMiLCJldmVudCI6IlBSIHZpZXdlZCIsInByb3BlcnRpZXMiOnsicHJJZCI6IjQ5YjUwMDgwLWU2MTMtNDQ0Yi1iYjhjLTgxOTViNjA0NGQ5MyJ9fQ==" width="0" height="0"/> 🧐 [View latest project report](https://app.snyk.io/org/sandbox-2ba/project/852e6e4f-be96-45c8-b370-1060f5ebee55?utm_source=github&utm_medium=referral&page=upgrade-pr) 🛠 [Adjust upgrade PR settings](https://app.snyk.io/org/sandbox-2ba/project/852e6e4f-be96-45c8-b370-1060f5ebee55/settings/integration?utm_source=github&utm_medium=referral&page=upgrade-pr) 🔕 [Ignore this dependency or unsubscribe from future upgrade PRs](https://app.snyk.io/org/sandbox-2ba/project/852e6e4f-be96-45c8-b370-1060f5ebee55/settings/integration?pkg=babel-jest&pkg=jest&utm_source=github&utm_medium=referral&page=upgrade-pr#auto-dep-upgrades) <!--- (snyk:metadata:{"prId":"49b50080-e613-444b-bb8c-8195b6044d93","prPublicId":"49b50080-e613-444b-bb8c-8195b6044d93","dependencies":[{"name":"babel-jest","from":"29.4.0","to":"29.4.3"},{"name":"jest","from":"29.4.0","to":"29.4.3"}],"packageManager":"npm","type":"auto","projectUrl":"https://app.snyk.io/org/sandbox-2ba/project/852e6e4f-be96-45c8-b370-1060f5ebee55?utm_source=github&utm_medium=referral&page=upgrade-pr","projectPublicId":"852e6e4f-be96-45c8-b370-1060f5ebee55","env":"prod","prType":"upgrade","vulns":[],"issuesToFix":[],"upgrade":[],"upgradeInfo":{"versionsDiff":3,"publishedDate":"2023-02-15T11:57:31.305Z"},"templateVariants":[],"hasFixes":false,"isMajorUpgrade":false,"isBreakingChange":false,"priorityScoreList":[]}) ---> --------- Co-authored-by: snyk-bot <snyk-bot@snyk.io>
This pull request has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs. |
Fixes #13808
Summary
As it is described in the issue, currently calling
jest.resetAllMocks()
is restoring mocks instead of resetting them. Trying to fix this.Test plan
Unit tests added.