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

Properly resolve mocked node modules without package.json defined #6232

Merged
merged 3 commits into from May 24, 2018

Conversation

@thymikee
Copy link
Collaborator

thymikee commented May 23, 2018

Summary

Fixes #4439

While constructing ModuleMap, the getMockName fn resolves like this:

./src/__mocks__/my-module.js 			-> "my-module" (1)
./src/__mocks__/my-module/sth.js		-> "my-module/sth" (2)
./src/__mocks__/my-module/index.js		-> "my-module/index" (3)

However, the ModuleMap#getMockModule doesn't account for the third scenario, when the manually mocked module is required as my-module – it just gets "my-module" as a second param. To fix this, I've added a fallback check for */index to mimic node resolution algorithm.

Not sure if this is the right place to put this fix, open to suggestions.
Possible other place to update the resolution logic would be:

const mock = this._moduleMap.getMockModule(name);

Test plan

Added an integration test

@thymikee thymikee requested a review from jeanlauliac May 23, 2018
@SimenB

This comment has been minimized.

Copy link
Collaborator

SimenB commented May 23, 2018

Nice and neat! Mind adding a changelog entry?

@codecov-io

This comment has been minimized.

Copy link

codecov-io commented May 23, 2018

Codecov Report

Merging #6232 into master will not change coverage.
The diff coverage is 100%.

Impacted file tree graph

@@           Coverage Diff           @@
##           master    #6232   +/-   ##
=======================================
  Coverage   64.33%   64.33%           
=======================================
  Files         219      219           
  Lines        8460     8460           
  Branches        3        3           
=======================================
  Hits         5443     5443           
  Misses       3016     3016           
  Partials        1        1
Impacted Files Coverage Δ
packages/jest-haste-map/src/module_map.js 87.5% <100%> (ø) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 2745e3e...2c74902. Read the comment docs.

@SimenB

This comment has been minimized.

Copy link
Collaborator

SimenB commented May 23, 2018

My gut tells me to populate the mock module map correctly in the first place, rather than extending the lookup. That might be difficult though, meaning this pragmatic approach is good enough

Copy link
Contributor

cpojer left a comment

Yes I think I'd prefer fixing this in the place where we write the module map, rather than where we read it.

@thymikee

This comment has been minimized.

Copy link
Collaborator Author

thymikee commented May 24, 2018

So if there's a module or module/index available in __mocks__ we should only write one of these into ModuleMap?

@cpojer cpojer merged commit 73a656d into facebook:master May 24, 2018
7 checks passed
7 checks passed
ci/circleci: test-and-deploy-website Your tests passed on CircleCI!
Details
ci/circleci: test-browser Your tests passed on CircleCI!
Details
ci/circleci: test-node-10 Your tests passed on CircleCI!
Details
ci/circleci: test-node-6 Your tests passed on CircleCI!
Details
ci/circleci: test-node-8 Your tests passed on CircleCI!
Details
ci/circleci: test-node-9 Your tests passed on CircleCI!
Details
continuous-integration/appveyor/pr AppVeyor build succeeded
Details
@cpojer

This comment has been minimized.

Copy link
Contributor

cpojer commented May 24, 2018

Right, let's try this one.

@thymikee thymikee deleted the thymikee:fix/4439 branch May 24, 2018
wopian added a commit to wopian/eslint-config-wopian that referenced this pull request May 25, 2018
This Pull Request updates dependency [jest](https://github.com/facebook/jest) from `~22.4.0` to `~23.0.0`



<details>
<summary>Release Notes</summary>

### [`v23.0.0`](https://github.com/facebook/jest/blob/master/CHANGELOG.md#&#8203;2300)
[Compare Source](facebook/jest@2745e3e...614f739)
##### Features

* `[expect]` Expose `getObjectSubset`, `iterableEquality`, and `subsetEquality`
  ([#&#8203;6210](`facebook/jest#6210))
* `[jest-snapshot]` Add snapshot property matchers
  ([#&#8203;6210](`facebook/jest#6210))
* `[jest-config]` Support jest-preset.js files within Node modules
  ([#&#8203;6185](`facebook/jest#6185))
* `[jest-cli]` Add `--detectOpenHandles` flag which enables Jest to potentially
  track down handles keeping it open after tests are complete.
  ([#&#8203;6130](`facebook/jest#6130))
* `[jest-jasmine2]` Add data driven testing based on `jest-each`
  ([#&#8203;6102](`facebook/jest#6102))
* `[jest-matcher-utils]` Change "suggest to equal" message to be more advisory
  ([#&#8203;6103](`facebook/jest#6103))
* `[jest-message-util]` Don't ignore messages with `vendor` anymore
  ([#&#8203;6117](`facebook/jest#6117))
* `[jest-validate]` Get rid of `jest-config` dependency
  ([#&#8203;6067](`facebook/jest#6067))
* `[jest-validate]` Adds option to inject `deprecationEntries`
  ([#&#8203;6067](`facebook/jest#6067))
* `[jest-snapshot]` [**BREAKING**] Concatenate name of test, optional snapshot
  name and count ([#&#8203;6015](`facebook/jest#6015))
* `[jest-runtime]` Allow for transform plugins to skip the definition process
  method if createTransformer method was defined.
  ([#&#8203;5999](`facebook/jest#5999))
* `[expect]` Add stack trace for async errors
  ([#&#8203;6008](`facebook/jest#6008))
* `[jest-jasmine2]` Add stack trace for timeouts
  ([#&#8203;6008](`facebook/jest#6008))
* `[jest-jasmine2]` Add stack trace for thrown non-`Error`s
  ([#&#8203;6008](`facebook/jest#6008))
* `[jest-runtime]` Prevent modules from marking themselves as their own parent
  ([#&#8203;5235](`facebook/jest#5235))
* `[jest-mock]` Add support for auto-mocking generator functions
  ([#&#8203;5983](`facebook/jest#5983))
* `[expect]` Add support for async matchers
   ([#&#8203;5919](`facebook/jest#5919))
* `[expect]` Suggest toContainEqual
  ([#&#8203;5948](`facebook/jest#5953))
* `[jest-config]` Export Jest's default options
  ([#&#8203;5948](`facebook/jest#5948))
* `[jest-editor-support]` Move `coverage` to `ProjectWorkspace.collectCoverage`
  ([#&#8203;5929](`facebook/jest#5929))
* `[jest-editor-support]` Add `coverage` option to runner
  ([#&#8203;5836](`facebook/jest#5836))
* `[jest-haste-map]` Support extracting dynamic `import`s
  ([#&#8203;5883](`facebook/jest#5883))
* `[expect]` Improve output format for mismatchedArgs in mock/spy calls.
  ([#&#8203;5846](`facebook/jest#5846))
* `[jest-cli]` Add support for using `--coverage` in combination with watch
  mode, `--onlyChanged`, `--findRelatedTests` and more
  ([#&#8203;5601](`facebook/jest#5601))
* `[jest-jasmine2]` [**BREAKING**] Adds error throwing and descriptive errors to
  `it`/ `test` for invalid arguments. `[jest-circus]` Adds error throwing and
  descriptive errors to `it`/ `test` for invalid arguments
  ([#&#8203;5558](`facebook/jest#5558))
* `[jest-matcher-utils]` Add `isNot` option to `matcherHint` function
  ([#&#8203;5512](`facebook/jest#5512))
* `[jest-config]` Add `<rootDir>` to runtime files not found error report
  ([#&#8203;5693](`facebook/jest#5693))
* `[expect]` Make toThrow matcher pass only if Error object is returned from
  promises ([#&#8203;5670](`facebook/jest#5670))
* `[expect]` Add isError to utils
  ([#&#8203;5670](`facebook/jest#5670))
* `[expect]` Add inverse matchers (`expect.not.arrayContaining`, etc.,
  [#&#8203;5517](`facebook/jest#5517))
* `[expect]` `expect.extend` now also extends asymmetric matchers
  ([#&#8203;5503](`facebook/jest#5503))
* `[jest-mock]` Update `spyOnProperty` to support spying on the prototype chain
  ([#&#8203;5753](`facebook/jest#5753))
* `[jest-mock]` Add tracking of return values in the `mock` property
  ([#&#8203;5752](`facebook/jest#5752))
* `[jest-mock]` Add tracking of thrown errors in the `mock` property
  ([#&#8203;5764](`facebook/jest#5764))
* `[expect]`Add nthCalledWith spy matcher
  ([#&#8203;5605](`facebook/jest#5605))
* `[jest-cli]` Add `isSerial` property that runners can expose to specify that
  they can not run in parallel
  ([#&#8203;5706](`facebook/jest#5706))
* `[expect]` Add `.toBeCalledTimes` and `toHaveBeenNthCalledWith` aliases
  ([#&#8203;5826](`facebook/jest#5826))
* `[jest-cli]` Interactive Snapshot Mode improvements
  ([#&#8203;5864](`facebook/jest#5864))
* `[jest-editor-support]` Add `no-color` option to runner
  ([#&#8203;5909](`facebook/jest#5909))
* `[jest-jasmine2]` Pretty-print non-Error object errors
  ([#&#8203;5980](`facebook/jest#5980))
* `[jest-message-util]` Include column in stack frames
  ([#&#8203;5889](`facebook/jest#5889))
* `[expect]` Introduce toStrictEqual
  ([#&#8203;6032](`facebook/jest#6032))
* `[expect]` Add return matchers
  ([#&#8203;5879](`facebook/jest#5879))
* `[jest-cli]` Improve snapshot summaries
  ([#&#8203;6181](`facebook/jest#6181))
* `[expect]` Include custom mock names in error messages
  ([#&#8203;6199](`facebook/jest#6199))
* `[jest-diff]` Support returning diff from oneline strings
  ([#&#8203;6221](`facebook/jest#6221))
* `[expect]` Improve return matchers
  ([#&#8203;6172](`facebook/jest#6172))
* `[jest-cli]` Overhaul watch plugin hooks names
  ([#&#8203;6249](`facebook/jest#6249))
* `[jest-mock]` Include tracked call results in serialized mock
  ([#&#8203;6244](`facebook/jest#6244))
##### Fixes

* `[jest-cli]` Fix stdin encoding to utf8 for watch plugins.
  ([#&#8203;6253](`facebook/jest#6253))
* `[expect]` Better detection of DOM Nodes for equality
  ([#&#8203;6246](`facebook/jest#6246))
* `[jest-cli]` Fix misleading action description for F key when in "only failed
  tests" mode. ([#&#8203;6167](`facebook/jest#6167))
* `[jest-worker]` Stick calls to workers before processing them
  ([#&#8203;6073](`facebook/jest#6073))
* `[babel-plugin-jest-hoist]` Allow using `console` global variable
  ([#&#8203;6075](`facebook/jest#6075))
* `[jest-jasmine2]` Always remove node core message from assert stack traces
  ([#&#8203;6055](`facebook/jest#6055))
* `[expect]` Add stack trace when `expect.assertions` and `expect.hasAssertions`
  causes test failures. ([#&#8203;5997](`facebook/jest#5997))
* `[jest-runtime]` Throw a more useful error when trying to require modules
  after the test environment is torn down
  ([#&#8203;5888](`facebook/jest#5888))
* `[jest-mock]` [**BREAKING**] Replace timestamps with `invocationCallOrder`
  ([#&#8203;5867](`facebook/jest#5867))
* `[jest-jasmine2]` Install `sourcemap-support` into normal runtime to catch
  runtime errors ([#&#8203;5945](`facebook/jest#5945))
* `[jest-jasmine2]` Added assertion error handling inside `afterAll hook`
  ([#&#8203;5884](`facebook/jest#5884))
* `[jest-cli]` Remove the notifier actions in case of failure when not in watch
  mode. ([#&#8203;5861](`facebook/jest#5861))
* `[jest-mock]` Extend .toHaveBeenCalled return message with outcome
  ([#&#8203;5951](`facebook/jest#5951))
* `[jest-runner]` Assign `process.env.JEST_WORKER_ID="1"` when in runInBand mode
  ([#&#8203;5860](`facebook/jest#5860))
* `[jest-cli]` Add descriptive error message when trying to use
  `globalSetup`/`globalTeardown` file that doesn't export a function.
  ([#&#8203;5835](`facebook/jest#5835))
* `[expect]` Do not rely on `instanceof RegExp`, since it will not work for
  RegExps created inside of a different VM
  ([#&#8203;5729](`facebook/jest#5729))
* `[jest-resolve]` Update node module resolution algorithm to correctly handle
  symlinked paths ([#&#8203;5085](`facebook/jest#5085))
* `[jest-editor-support]` Update `Settings` to use spawn in shell option
  ([#&#8203;5658](`facebook/jest#5658))
* `[jest-cli]` Improve the error message when 2 projects resolve to the same
  config ([#&#8203;5674](`facebook/jest#5674))
* `[jest-runtime]` remove retainLines from coverage instrumentation
  ([#&#8203;5692](`facebook/jest#5692))
* `[jest-cli]` Fix update snapshot issue when using watchAll
  ([#&#8203;5696](`facebook/jest#5696))
* `[expect]` Fix rejects.not matcher
  ([#&#8203;5670](`facebook/jest#5670))
* `[jest-runtime]` Prevent Babel warnings on large files
  ([#&#8203;5702](`facebook/jest#5702))
* `[jest-mock]` Prevent `mockRejectedValue` from causing unhandled rejection
  ([#&#8203;5720](`facebook/jest#5720))
* `[pretty-format]` Handle React fragments better
  ([#&#8203;5816](`facebook/jest#5816))
* `[pretty-format]` Handle formatting of `React.forwardRef` and `Context`
  components ([#&#8203;6093](`facebook/jest#6093))
* `[jest-cli]` Switch collectCoverageFrom back to a string
  ([#&#8203;5914](`facebook/jest#5914))
* `[jest-regex-util]` Fix handling regex symbols in tests path on Windows
  ([#&#8203;5941](`facebook/jest#5941))
* `[jest-util]` Fix handling of NaN/Infinity in mock timer delay
  ([#&#8203;5966](`facebook/jest#5966))
* `[jest-resolve]` Generalise test for package main entries equivalent to ".".
  ([#&#8203;5968](`facebook/jest#5968))
* `[jest-config]` Ensure that custom resolvers are used when resolving the
  configuration ([#&#8203;5976](`facebook/jest#5976))
* `[website]` Fix website docs
  ([#&#8203;5853](`facebook/jest#5853))
* `[expect]` Fix isEqual Set and Map to compare object values and keys
  regardless of order ([#&#8203;6150](`facebook/jest#6150))
* `[pretty-format]` [**BREAKING**] Remove undefined props from React elements
  ([#&#8203;6162](`facebook/jest#6162))
* `[jest-haste-map]` Properly resolve mocked node modules without package.json
  defined ([#&#8203;6232](`facebook/jest#6232))
##### Chore & Maintenance

* `[jest-runner]` Move sourcemap installation from `jest-jasmine2` to
  `jest-runner` ([#&#8203;6176](`facebook/jest#6176))
* `[jest-cli]` Use yargs's built-in `version` instead of rolling our own
  ([#&#8203;6215](`facebook/jest#6215))
* `[docs]` Add explanation on how to mock methods not implemented in JSDOM
* `[jest-jasmine2]` Simplify `Env.execute` and TreeProcessor to setup and clean
  resources for the top suite the same way as for all of the children suites
  ([#&#8203;5885](`facebook/jest#5885))
* `[babel-jest]` [**BREAKING**] Always return object from transformer
  ([#&#8203;5991](`facebook/jest#5991))
* `[*]` Run Prettier on compiled output
  ([#&#8203;5858](`facebook/jest#3497))
* `[jest-cli]` Add fileChange hook for plugins
  ([#&#8203;5708](`facebook/jest#5708))
* `[docs]` Add docs on using `jest.mock(...)`
  ([#&#8203;5648](`facebook/jest#5648))
* `[docs]` Mention Jest Puppeteer Preset
  ([#&#8203;5722](`facebook/jest#5722))
* `[docs]` Add jest-community section to website
  ([#&#8203;5675](`facebook/jest#5675))
* `[docs]` Add versioned docs for v22.4
  ([##&#8203;5733](https://github.com/facebook/jest/pull/#&#8203;5733))
* `[docs]` Improve Snapshot Testing Guide
  ([#&#8203;5812](`facebook/jest#5812))
* `[jest-runtime]` [**BREAKING**] Remove `jest.genMockFn` and
  `jest.genMockFunction` ([#&#8203;6173](`facebook/jest#6173))
* `[jest-message-util]` Avoid adding unnecessary indent to blank lines in stack
  traces ([#&#8203;6211](`facebook/jest#6211))

---

</details>




---

This PR has been generated by [Renovate Bot](https://renovatebot.com).
wopian added a commit to wopian/kitsu that referenced this pull request May 25, 2018
This Pull Request updates dependency [jest](https://github.com/facebook/jest) from `~22.4.0` to `~23.0.0`



<details>
<summary>Release Notes</summary>

### [`v23.0.0`](https://github.com/facebook/jest/blob/master/CHANGELOG.md#&#8203;2300)
[Compare Source](facebook/jest@2745e3e...v23.0.0)
##### Features

* `[expect]` Expose `getObjectSubset`, `iterableEquality`, and `subsetEquality`
  ([#&#8203;6210](`facebook/jest#6210))
* `[jest-snapshot]` Add snapshot property matchers
  ([#&#8203;6210](`facebook/jest#6210))
* `[jest-config]` Support jest-preset.js files within Node modules
  ([#&#8203;6185](`facebook/jest#6185))
* `[jest-cli]` Add `--detectOpenHandles` flag which enables Jest to potentially
  track down handles keeping it open after tests are complete.
  ([#&#8203;6130](`facebook/jest#6130))
* `[jest-jasmine2]` Add data driven testing based on `jest-each`
  ([#&#8203;6102](`facebook/jest#6102))
* `[jest-matcher-utils]` Change "suggest to equal" message to be more advisory
  ([#&#8203;6103](`facebook/jest#6103))
* `[jest-message-util]` Don't ignore messages with `vendor` anymore
  ([#&#8203;6117](`facebook/jest#6117))
* `[jest-validate]` Get rid of `jest-config` dependency
  ([#&#8203;6067](`facebook/jest#6067))
* `[jest-validate]` Adds option to inject `deprecationEntries`
  ([#&#8203;6067](`facebook/jest#6067))
* `[jest-snapshot]` [**BREAKING**] Concatenate name of test, optional snapshot
  name and count ([#&#8203;6015](`facebook/jest#6015))
* `[jest-runtime]` Allow for transform plugins to skip the definition process
  method if createTransformer method was defined.
  ([#&#8203;5999](`facebook/jest#5999))
* `[expect]` Add stack trace for async errors
  ([#&#8203;6008](`facebook/jest#6008))
* `[jest-jasmine2]` Add stack trace for timeouts
  ([#&#8203;6008](`facebook/jest#6008))
* `[jest-jasmine2]` Add stack trace for thrown non-`Error`s
  ([#&#8203;6008](`facebook/jest#6008))
* `[jest-runtime]` Prevent modules from marking themselves as their own parent
  ([#&#8203;5235](`facebook/jest#5235))
* `[jest-mock]` Add support for auto-mocking generator functions
  ([#&#8203;5983](`facebook/jest#5983))
* `[expect]` Add support for async matchers
   ([#&#8203;5919](`facebook/jest#5919))
* `[expect]` Suggest toContainEqual
  ([#&#8203;5948](`facebook/jest#5953))
* `[jest-config]` Export Jest's default options
  ([#&#8203;5948](`facebook/jest#5948))
* `[jest-editor-support]` Move `coverage` to `ProjectWorkspace.collectCoverage`
  ([#&#8203;5929](`facebook/jest#5929))
* `[jest-editor-support]` Add `coverage` option to runner
  ([#&#8203;5836](`facebook/jest#5836))
* `[jest-haste-map]` Support extracting dynamic `import`s
  ([#&#8203;5883](`facebook/jest#5883))
* `[expect]` Improve output format for mismatchedArgs in mock/spy calls.
  ([#&#8203;5846](`facebook/jest#5846))
* `[jest-cli]` Add support for using `--coverage` in combination with watch
  mode, `--onlyChanged`, `--findRelatedTests` and more
  ([#&#8203;5601](`facebook/jest#5601))
* `[jest-jasmine2]` [**BREAKING**] Adds error throwing and descriptive errors to
  `it`/ `test` for invalid arguments. `[jest-circus]` Adds error throwing and
  descriptive errors to `it`/ `test` for invalid arguments
  ([#&#8203;5558](`facebook/jest#5558))
* `[jest-matcher-utils]` Add `isNot` option to `matcherHint` function
  ([#&#8203;5512](`facebook/jest#5512))
* `[jest-config]` Add `<rootDir>` to runtime files not found error report
  ([#&#8203;5693](`facebook/jest#5693))
* `[expect]` Make toThrow matcher pass only if Error object is returned from
  promises ([#&#8203;5670](`facebook/jest#5670))
* `[expect]` Add isError to utils
  ([#&#8203;5670](`facebook/jest#5670))
* `[expect]` Add inverse matchers (`expect.not.arrayContaining`, etc.,
  [#&#8203;5517](`facebook/jest#5517))
* `[expect]` `expect.extend` now also extends asymmetric matchers
  ([#&#8203;5503](`facebook/jest#5503))
* `[jest-mock]` Update `spyOnProperty` to support spying on the prototype chain
  ([#&#8203;5753](`facebook/jest#5753))
* `[jest-mock]` Add tracking of return values in the `mock` property
  ([#&#8203;5752](`facebook/jest#5752))
* `[jest-mock]` Add tracking of thrown errors in the `mock` property
  ([#&#8203;5764](`facebook/jest#5764))
* `[expect]`Add nthCalledWith spy matcher
  ([#&#8203;5605](`facebook/jest#5605))
* `[jest-cli]` Add `isSerial` property that runners can expose to specify that
  they can not run in parallel
  ([#&#8203;5706](`facebook/jest#5706))
* `[expect]` Add `.toBeCalledTimes` and `toHaveBeenNthCalledWith` aliases
  ([#&#8203;5826](`facebook/jest#5826))
* `[jest-cli]` Interactive Snapshot Mode improvements
  ([#&#8203;5864](`facebook/jest#5864))
* `[jest-editor-support]` Add `no-color` option to runner
  ([#&#8203;5909](`facebook/jest#5909))
* `[jest-jasmine2]` Pretty-print non-Error object errors
  ([#&#8203;5980](`facebook/jest#5980))
* `[jest-message-util]` Include column in stack frames
  ([#&#8203;5889](`facebook/jest#5889))
* `[expect]` Introduce toStrictEqual
  ([#&#8203;6032](`facebook/jest#6032))
* `[expect]` Add return matchers
  ([#&#8203;5879](`facebook/jest#5879))
* `[jest-cli]` Improve snapshot summaries
  ([#&#8203;6181](`facebook/jest#6181))
* `[expect]` Include custom mock names in error messages
  ([#&#8203;6199](`facebook/jest#6199))
* `[jest-diff]` Support returning diff from oneline strings
  ([#&#8203;6221](`facebook/jest#6221))
* `[expect]` Improve return matchers
  ([#&#8203;6172](`facebook/jest#6172))
* `[jest-cli]` Overhaul watch plugin hooks names
  ([#&#8203;6249](`facebook/jest#6249))
* `[jest-mock]` Include tracked call results in serialized mock
  ([#&#8203;6244](`facebook/jest#6244))
##### Fixes

* `[jest-cli]` Fix stdin encoding to utf8 for watch plugins.
  ([#&#8203;6253](`facebook/jest#6253))
* `[expect]` Better detection of DOM Nodes for equality
  ([#&#8203;6246](`facebook/jest#6246))
* `[jest-cli]` Fix misleading action description for F key when in "only failed
  tests" mode. ([#&#8203;6167](`facebook/jest#6167))
* `[jest-worker]` Stick calls to workers before processing them
  ([#&#8203;6073](`facebook/jest#6073))
* `[babel-plugin-jest-hoist]` Allow using `console` global variable
  ([#&#8203;6075](`facebook/jest#6075))
* `[jest-jasmine2]` Always remove node core message from assert stack traces
  ([#&#8203;6055](`facebook/jest#6055))
* `[expect]` Add stack trace when `expect.assertions` and `expect.hasAssertions`
  causes test failures. ([#&#8203;5997](`facebook/jest#5997))
* `[jest-runtime]` Throw a more useful error when trying to require modules
  after the test environment is torn down
  ([#&#8203;5888](`facebook/jest#5888))
* `[jest-mock]` [**BREAKING**] Replace timestamps with `invocationCallOrder`
  ([#&#8203;5867](`facebook/jest#5867))
* `[jest-jasmine2]` Install `sourcemap-support` into normal runtime to catch
  runtime errors ([#&#8203;5945](`facebook/jest#5945))
* `[jest-jasmine2]` Added assertion error handling inside `afterAll hook`
  ([#&#8203;5884](`facebook/jest#5884))
* `[jest-cli]` Remove the notifier actions in case of failure when not in watch
  mode. ([#&#8203;5861](`facebook/jest#5861))
* `[jest-mock]` Extend .toHaveBeenCalled return message with outcome
  ([#&#8203;5951](`facebook/jest#5951))
* `[jest-runner]` Assign `process.env.JEST_WORKER_ID="1"` when in runInBand mode
  ([#&#8203;5860](`facebook/jest#5860))
* `[jest-cli]` Add descriptive error message when trying to use
  `globalSetup`/`globalTeardown` file that doesn't export a function.
  ([#&#8203;5835](`facebook/jest#5835))
* `[expect]` Do not rely on `instanceof RegExp`, since it will not work for
  RegExps created inside of a different VM
  ([#&#8203;5729](`facebook/jest#5729))
* `[jest-resolve]` Update node module resolution algorithm to correctly handle
  symlinked paths ([#&#8203;5085](`facebook/jest#5085))
* `[jest-editor-support]` Update `Settings` to use spawn in shell option
  ([#&#8203;5658](`facebook/jest#5658))
* `[jest-cli]` Improve the error message when 2 projects resolve to the same
  config ([#&#8203;5674](`facebook/jest#5674))
* `[jest-runtime]` remove retainLines from coverage instrumentation
  ([#&#8203;5692](`facebook/jest#5692))
* `[jest-cli]` Fix update snapshot issue when using watchAll
  ([#&#8203;5696](`facebook/jest#5696))
* `[expect]` Fix rejects.not matcher
  ([#&#8203;5670](`facebook/jest#5670))
* `[jest-runtime]` Prevent Babel warnings on large files
  ([#&#8203;5702](`facebook/jest#5702))
* `[jest-mock]` Prevent `mockRejectedValue` from causing unhandled rejection
  ([#&#8203;5720](`facebook/jest#5720))
* `[pretty-format]` Handle React fragments better
  ([#&#8203;5816](`facebook/jest#5816))
* `[pretty-format]` Handle formatting of `React.forwardRef` and `Context`
  components ([#&#8203;6093](`facebook/jest#6093))
* `[jest-cli]` Switch collectCoverageFrom back to a string
  ([#&#8203;5914](`facebook/jest#5914))
* `[jest-regex-util]` Fix handling regex symbols in tests path on Windows
  ([#&#8203;5941](`facebook/jest#5941))
* `[jest-util]` Fix handling of NaN/Infinity in mock timer delay
  ([#&#8203;5966](`facebook/jest#5966))
* `[jest-resolve]` Generalise test for package main entries equivalent to ".".
  ([#&#8203;5968](`facebook/jest#5968))
* `[jest-config]` Ensure that custom resolvers are used when resolving the
  configuration ([#&#8203;5976](`facebook/jest#5976))
* `[website]` Fix website docs
  ([#&#8203;5853](`facebook/jest#5853))
* `[expect]` Fix isEqual Set and Map to compare object values and keys
  regardless of order ([#&#8203;6150](`facebook/jest#6150))
* `[pretty-format]` [**BREAKING**] Remove undefined props from React elements
  ([#&#8203;6162](`facebook/jest#6162))
* `[jest-haste-map]` Properly resolve mocked node modules without package.json
  defined ([#&#8203;6232](`facebook/jest#6232))
##### Chore & Maintenance

* `[jest-runner]` Move sourcemap installation from `jest-jasmine2` to
  `jest-runner` ([#&#8203;6176](`facebook/jest#6176))
* `[jest-cli]` Use yargs's built-in `version` instead of rolling our own
  ([#&#8203;6215](`facebook/jest#6215))
* `[docs]` Add explanation on how to mock methods not implemented in JSDOM
* `[jest-jasmine2]` Simplify `Env.execute` and TreeProcessor to setup and clean
  resources for the top suite the same way as for all of the children suites
  ([#&#8203;5885](`facebook/jest#5885))
* `[babel-jest]` [**BREAKING**] Always return object from transformer
  ([#&#8203;5991](`facebook/jest#5991))
* `[*]` Run Prettier on compiled output
  ([#&#8203;5858](`facebook/jest#3497))
* `[jest-cli]` Add fileChange hook for plugins
  ([#&#8203;5708](`facebook/jest#5708))
* `[docs]` Add docs on using `jest.mock(...)`
  ([#&#8203;5648](`facebook/jest#5648))
* `[docs]` Mention Jest Puppeteer Preset
  ([#&#8203;5722](`facebook/jest#5722))
* `[docs]` Add jest-community section to website
  ([#&#8203;5675](`facebook/jest#5675))
* `[docs]` Add versioned docs for v22.4
  ([##&#8203;5733](https://github.com/facebook/jest/pull/#&#8203;5733))
* `[docs]` Improve Snapshot Testing Guide
  ([#&#8203;5812](`facebook/jest#5812))
* `[jest-runtime]` [**BREAKING**] Remove `jest.genMockFn` and
  `jest.genMockFunction` ([#&#8203;6173](`facebook/jest#6173))
* `[jest-message-util]` Avoid adding unnecessary indent to blank lines in stack
  traces ([#&#8203;6211](`facebook/jest#6211))

---

</details>




---

This PR has been generated by [Renovate Bot](https://renovatebot.com).
calebeby added a commit to Pigmice2733/scouting-frontend that referenced this pull request May 30, 2018
This Pull Request updates dependency [jest](https://github.com/facebook/jest) from `v22.4.3` to `v23.0.1`



<details>
<summary>Release Notes</summary>

### [`v23.0.1`](https://github.com/facebook/jest/blob/master/CHANGELOG.md#&#8203;2301)
[Compare Source](facebook/jest@v23.0.0...3a3b4e3)
##### Chore & Maintenance

* `[jest-jasemine2]` Add dependency on jest-each ([#&#8203;6308](`facebook/jest#6308))
* `[jest-each]` Move jest-each into core Jest ([#&#8203;6278](`facebook/jest#6278))
* `[examples]` Update typescript example to using ts-jest ([#&#8203;6260](`facebook/jest#6260))
##### Fixes

* `[pretty-format]` Serialize inverse asymmetric matchers correctly ([#&#8203;6272](`facebook/jest#6272))

---

### [`v23.0.0`](https://github.com/facebook/jest/blob/master/CHANGELOG.md#&#8203;2300)
[Compare Source](facebook/jest@2745e3e...v23.0.0)
##### Features

* `[expect]` Expose `getObjectSubset`, `iterableEquality`, and `subsetEquality` ([#&#8203;6210](`facebook/jest#6210))
* `[jest-snapshot]` Add snapshot property matchers ([#&#8203;6210](`facebook/jest#6210))
* `[jest-config]` Support jest-preset.js files within Node modules ([#&#8203;6185](`facebook/jest#6185))
* `[jest-cli]` Add `--detectOpenHandles` flag which enables Jest to potentially track down handles keeping it open after tests are complete. ([#&#8203;6130](`facebook/jest#6130))
* `[jest-jasmine2]` Add data driven testing based on `jest-each` ([#&#8203;6102](`facebook/jest#6102))
* `[jest-matcher-utils]` Change "suggest to equal" message to be more advisory ([#&#8203;6103](`facebook/jest#6103))
* `[jest-message-util]` Don't ignore messages with `vendor` anymore ([#&#8203;6117](`facebook/jest#6117))
* `[jest-validate]` Get rid of `jest-config` dependency ([#&#8203;6067](`facebook/jest#6067))
* `[jest-validate]` Adds option to inject `deprecationEntries` ([#&#8203;6067](`facebook/jest#6067))
* `[jest-snapshot]` [**BREAKING**] Concatenate name of test, optional snapshot name and count ([#&#8203;6015](`facebook/jest#6015))
* `[jest-runtime]` Allow for transform plugins to skip the definition process method if createTransformer method was defined. ([#&#8203;5999](`facebook/jest#5999))
* `[expect]` Add stack trace for async errors ([#&#8203;6008](`facebook/jest#6008))
* `[jest-jasmine2]` Add stack trace for timeouts ([#&#8203;6008](`facebook/jest#6008))
* `[jest-jasmine2]` Add stack trace for thrown non-`Error`s ([#&#8203;6008](`facebook/jest#6008))
* `[jest-runtime]` Prevent modules from marking themselves as their own parent ([#&#8203;5235](`facebook/jest#5235))
* `[jest-mock]` Add support for auto-mocking generator functions ([#&#8203;5983](`facebook/jest#5983))
* `[expect]` Add support for async matchers  ([#&#8203;5919](`facebook/jest#5919))
* `[expect]` Suggest toContainEqual ([#&#8203;5948](`facebook/jest#5953))
* `[jest-config]` Export Jest's default options ([#&#8203;5948](`facebook/jest#5948))
* `[jest-editor-support]` Move `coverage` to `ProjectWorkspace.collectCoverage` ([#&#8203;5929](`facebook/jest#5929))
* `[jest-editor-support]` Add `coverage` option to runner ([#&#8203;5836](`facebook/jest#5836))
* `[jest-haste-map]` Support extracting dynamic `import`s ([#&#8203;5883](`facebook/jest#5883))
* `[expect]` Improve output format for mismatchedArgs in mock/spy calls. ([#&#8203;5846](`facebook/jest#5846))
* `[jest-cli]` Add support for using `--coverage` in combination with watch mode, `--onlyChanged`, `--findRelatedTests` and more ([#&#8203;5601](`facebook/jest#5601))
* `[jest-jasmine2]` [**BREAKING**] Adds error throwing and descriptive errors to `it`/ `test` for invalid arguments. `[jest-circus]` Adds error throwing and descriptive errors to `it`/ `test` for invalid arguments ([#&#8203;5558](`facebook/jest#5558))
* `[jest-matcher-utils]` Add `isNot` option to `matcherHint` function ([#&#8203;5512](`facebook/jest#5512))
* `[jest-config]` Add `<rootDir>` to runtime files not found error report ([#&#8203;5693](`facebook/jest#5693))
* `[expect]` Make toThrow matcher pass only if Error object is returned from promises ([#&#8203;5670](`facebook/jest#5670))
* `[expect]` Add isError to utils ([#&#8203;5670](`facebook/jest#5670))
* `[expect]` Add inverse matchers (`expect.not.arrayContaining`, etc., [#&#8203;5517](`facebook/jest#5517))
* `[expect]` `expect.extend` now also extends asymmetric matchers ([#&#8203;5503](`facebook/jest#5503))
* `[jest-mock]` Update `spyOnProperty` to support spying on the prototype chain ([#&#8203;5753](`facebook/jest#5753))
* `[jest-mock]` Add tracking of return values in the `mock` property ([#&#8203;5752](`facebook/jest#5752))
* `[jest-mock]` Add tracking of thrown errors in the `mock` property ([#&#8203;5764](`facebook/jest#5764))
* `[expect]`Add nthCalledWith spy matcher ([#&#8203;5605](`facebook/jest#5605))
* `[jest-cli]` Add `isSerial` property that runners can expose to specify that they can not run in parallel ([#&#8203;5706](`facebook/jest#5706))
* `[expect]` Add `.toBeCalledTimes` and `toHaveBeenNthCalledWith` aliases ([#&#8203;5826](`facebook/jest#5826))
* `[jest-cli]` Interactive Snapshot Mode improvements ([#&#8203;5864](`facebook/jest#5864))
* `[jest-editor-support]` Add `no-color` option to runner ([#&#8203;5909](`facebook/jest#5909))
* `[jest-jasmine2]` Pretty-print non-Error object errors ([#&#8203;5980](`facebook/jest#5980))
* `[jest-message-util]` Include column in stack frames ([#&#8203;5889](`facebook/jest#5889))
* `[expect]` Introduce toStrictEqual ([#&#8203;6032](`facebook/jest#6032))
* `[expect]` Add return matchers ([#&#8203;5879](`facebook/jest#5879))
* `[jest-cli]` Improve snapshot summaries ([#&#8203;6181](`facebook/jest#6181))
* `[expect]` Include custom mock names in error messages ([#&#8203;6199](`facebook/jest#6199))
* `[jest-diff]` Support returning diff from oneline strings ([#&#8203;6221](`facebook/jest#6221))
* `[expect]` Improve return matchers ([#&#8203;6172](`facebook/jest#6172))
* `[jest-cli]` Overhaul watch plugin hooks names ([#&#8203;6249](`facebook/jest#6249))
* `[jest-mock]` Include tracked call results in serialized mock ([#&#8203;6244](`facebook/jest#6244))
##### Fixes

* `[jest-cli]` Fix stdin encoding to utf8 for watch plugins. ([#&#8203;6253](`facebook/jest#6253))
* `[expect]` Better detection of DOM Nodes for equality ([#&#8203;6246](`facebook/jest#6246))
* `[jest-cli]` Fix misleading action description for F key when in "only failed tests" mode. ([#&#8203;6167](`facebook/jest#6167))
* `[jest-worker]` Stick calls to workers before processing them ([#&#8203;6073](`facebook/jest#6073))
* `[babel-plugin-jest-hoist]` Allow using `console` global variable ([#&#8203;6075](`facebook/jest#6075))
* `[jest-jasmine2]` Always remove node core message from assert stack traces ([#&#8203;6055](`facebook/jest#6055))
* `[expect]` Add stack trace when `expect.assertions` and `expect.hasAssertions` causes test failures. ([#&#8203;5997](`facebook/jest#5997))
* `[jest-runtime]` Throw a more useful error when trying to require modules after the test environment is torn down ([#&#8203;5888](`facebook/jest#5888))
* `[jest-mock]` [**BREAKING**] Replace timestamps with `invocationCallOrder` ([#&#8203;5867](`facebook/jest#5867))
* `[jest-jasmine2]` Install `sourcemap-support` into normal runtime to catch runtime errors ([#&#8203;5945](`facebook/jest#5945))
* `[jest-jasmine2]` Added assertion error handling inside `afterAll hook` ([#&#8203;5884](`facebook/jest#5884))
* `[jest-cli]` Remove the notifier actions in case of failure when not in watch mode. ([#&#8203;5861](`facebook/jest#5861))
* `[jest-mock]` Extend .toHaveBeenCalled return message with outcome ([#&#8203;5951](`facebook/jest#5951))
* `[jest-runner]` Assign `process.env.JEST_WORKER_ID="1"` when in runInBand mode ([#&#8203;5860](`facebook/jest#5860))
* `[jest-cli]` Add descriptive error message when trying to use `globalSetup`/`globalTeardown` file that doesn't export a function. ([#&#8203;5835](`facebook/jest#5835))
* `[expect]` Do not rely on `instanceof RegExp`, since it will not work for RegExps created inside of a different VM ([#&#8203;5729](`facebook/jest#5729))
* `[jest-resolve]` Update node module resolution algorithm to correctly handle symlinked paths ([#&#8203;5085](`facebook/jest#5085))
* `[jest-editor-support]` Update `Settings` to use spawn in shell option ([#&#8203;5658](`facebook/jest#5658))
* `[jest-cli]` Improve the error message when 2 projects resolve to the same config ([#&#8203;5674](`facebook/jest#5674))
* `[jest-runtime]` remove retainLines from coverage instrumentation ([#&#8203;5692](`facebook/jest#5692))
* `[jest-cli]` Fix update snapshot issue when using watchAll ([#&#8203;5696](`facebook/jest#5696))
* `[expect]` Fix rejects.not matcher ([#&#8203;5670](`facebook/jest#5670))
* `[jest-runtime]` Prevent Babel warnings on large files ([#&#8203;5702](`facebook/jest#5702))
* `[jest-mock]` Prevent `mockRejectedValue` from causing unhandled rejection ([#&#8203;5720](`facebook/jest#5720))
* `[pretty-format]` Handle React fragments better ([#&#8203;5816](`facebook/jest#5816))
* `[pretty-format]` Handle formatting of `React.forwardRef` and `Context` components ([#&#8203;6093](`facebook/jest#6093))
* `[jest-cli]` Switch collectCoverageFrom back to a string ([#&#8203;5914](`facebook/jest#5914))
* `[jest-regex-util]` Fix handling regex symbols in tests path on Windows ([#&#8203;5941](`facebook/jest#5941))
* `[jest-util]` Fix handling of NaN/Infinity in mock timer delay ([#&#8203;5966](`facebook/jest#5966))
* `[jest-resolve]` Generalise test for package main entries equivalent to ".". ([#&#8203;5968](`facebook/jest#5968))
* `[jest-config]` Ensure that custom resolvers are used when resolving the configuration ([#&#8203;5976](`facebook/jest#5976))
* `[website]` Fix website docs ([#&#8203;5853](`facebook/jest#5853))
* `[expect]` Fix isEqual Set and Map to compare object values and keys regardless of order ([#&#8203;6150](`facebook/jest#6150))
* `[pretty-format]` [**BREAKING**] Remove undefined props from React elements ([#&#8203;6162](`facebook/jest#6162))
* `[jest-haste-map]` Properly resolve mocked node modules without package.json defined ([#&#8203;6232](`facebook/jest#6232))
##### Chore & Maintenance

* `[jest-runner]` Move sourcemap installation from `jest-jasmine2` to `jest-runner` ([#&#8203;6176](`facebook/jest#6176))
* `[jest-cli]` Use yargs's built-in `version` instead of rolling our own ([#&#8203;6215](`facebook/jest#6215))
* `[docs]` Add explanation on how to mock methods not implemented in JSDOM
* `[jest-jasmine2]` Simplify `Env.execute` and TreeProcessor to setup and clean resources for the top suite the same way as for all of the children suites ([#&#8203;5885](`facebook/jest#5885))
* `[babel-jest]` [**BREAKING**] Always return object from transformer ([#&#8203;5991](`facebook/jest#5991))
* `[*]` Run Prettier on compiled output ([#&#8203;5858](`facebook/jest#3497))
* `[jest-cli]` Add fileChange hook for plugins ([#&#8203;5708](`facebook/jest#5708))
* `[docs]` Add docs on using `jest.mock(...)` ([#&#8203;5648](`facebook/jest#5648))
* `[docs]` Mention Jest Puppeteer Preset ([#&#8203;5722](`facebook/jest#5722))
* `[docs]` Add jest-community section to website ([#&#8203;5675](`facebook/jest#5675))
* `[docs]` Add versioned docs for v22.4 ([#&#8203;5733](`facebook/jest#5733))
* `[docs]` Improve Snapshot Testing Guide ([#&#8203;5812](`facebook/jest#5812))
* `[jest-runtime]` [**BREAKING**] Remove `jest.genMockFn` and `jest.genMockFunction` ([#&#8203;6173](`facebook/jest#6173))
* `[jest-message-util]` Avoid adding unnecessary indent to blank lines in stack traces ([#&#8203;6211](`facebook/jest#6211))

---

### [`v22.4.4`](facebook/jest@6851d8b...v22.4.4)
[Compare Source](facebook/jest@6851d8b...v22.4.4)


---

</details>




---

This PR has been generated by [Renovate Bot](https://renovatebot.com).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
5 participants
You can’t perform that action at this time.