@researchgate/jest-file-snapshot
v0.3.8
Published
Jest matcher to write snapshots to a separate file instead of the default snapshot file used by Jest. Writing a snapshot to a separate file means you have proper syntax highlighting in the output file, and better readability without those pesky escape cha
Downloads
10
Readme
jest-file-snapshot
Jest matcher to write snapshots to a separate file instead of the default snapshot file used by Jest. Writing a snapshot to a separate file means you have proper syntax highlighting in the output file, and better readability without those pesky escape characters.
Installation
npm install --save-dev jest-file-snapshot
or
yarn add --dev jest-file-snapshot
Usage
Extend Jest's expect
:
import { toMatchFile } from 'jest-file-snapshot';
expect.extend({ toMatchFile });
Then use it in your tests:
it('matches content of file on disk', () => {
expect(content).toMatchFile();
});
The content passed can be of type String or a Buffer. Only if the Buffer is holding binary data, will the comparison be done using Buffer.equals() instead of ===.
The matcher takes two optional arguments:
filepath
: path to the file whose content should be matched, e.g.expect(content).toMatchFile(path.join(__dirname, 'output.md'))
options
: additional options object for the matcher, with following properties:diff
: options forjest-diff
You should also exclude the output files from Jest's watcher so that updating the snapshot doesn't re-run the tests again.
For example, by default toMatchFile
uses a folder named __file_snapshots__
which you can exclude by adding the following under the jest
key in package.json
:
"watchPathIgnorePatterns": [
"__file_snapshots__"
]