Skip to content

Commit

Permalink
chore: use jest-serializer-ansi-escapes (#161)
Browse files Browse the repository at this point in the history
  • Loading branch information
mrazauskas committed Jul 9, 2022
1 parent 7ace486 commit a0ac757
Show file tree
Hide file tree
Showing 7 changed files with 214 additions and 274 deletions.
3 changes: 2 additions & 1 deletion package.json
Expand Up @@ -63,6 +63,7 @@
"eslint-plugin-jest": "^26.0.0",
"eslint-plugin-prettier": "^4.0.0",
"jest": "^28.0.0",
"jest-serializer-ansi-escapes": "^1.0.1",
"prettier": "^2.1.1",
"rimraf": "^3.0.2",
"semantic-release": "^19.0.3",
Expand All @@ -81,7 +82,7 @@
"<rootDir>/testname"
],
"snapshotSerializers": [
"<rootDir>/node_modules/pretty-format/build/plugins/ConvertAnsi"
"jest-serializer-ansi-escapes"
],
"testPathIgnorePatterns": [
"<rootDir>/build/.*",
Expand Down
158 changes: 81 additions & 77 deletions src/file_name_plugin/__tests__/__snapshots__/plugin.test.ts.snap
@@ -1,127 +1,131 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP

exports[`can select a pattern that matches multiple files 1`] = `
[MOCK - cursorLeft]
pattern › f
[MOCK - cursorSavePosition]
[MOCK - cursorLeft]
"<eraseLine>
<moveCursorToColumn1>
<eraseScreenDown>
<dim> pattern ›</> f
<saveCursorPosition>
<moveCursorToColumn1>
Pattern matches 3 files
› src/foo.js
› src/file-1.js
› src/file-2.js
[MOCK - cursorTo(12, 5)]
[MOCK - cursorRestorePosition]
<dim>›</> <dim>src/</></>f</><dim>oo.js</>
[MOCK - cursorLeft]
<dim>›</> <dim>src/</></>f</><dim>ile-1.js</>
pattern › fi
[MOCK - cursorSavePosition]
[MOCK - cursorLeft]
<dim>›</> <dim>src/</></>f</><dim>ile-2.js</>
<moveCursorToRow6Column13>
<restoreCursorPosition>
<eraseLine>
<moveCursorToColumn1>
<eraseScreenDown>
<dim> pattern ›</> fi
<saveCursorPosition>
<moveCursorToColumn1>
Pattern matches 2 files
src/file-1.js
<dim>›</> <dim>src/</></>fi</><dim>le-1.js</>
› src/file-2.js
[MOCK - cursorTo(13, 5)]
[MOCK - cursorRestorePosition]
<dim>›</> <dim>src/</></>fi</><dim>le-2.js</>
<moveCursorToRow6Column14>
<restoreCursorPosition>
"
`;
exports[`can use arrows to select a specific file 1`] = `
[MOCK - cursorLeft]
pattern › f
[MOCK - cursorSavePosition]
[MOCK - cursorLeft]
"<eraseLine>
<moveCursorToColumn1>
<eraseScreenDown>
<dim> pattern ›</> f
<saveCursorPosition>
<moveCursorToColumn1>
Pattern matches 3 files
› src/foo.js
› src/file-1.js
<dim>›</> <dim>src/</></>f</><dim>oo.js</>
› src/file-2.js
[MOCK - cursorTo(12, 5)]
[MOCK - cursorRestorePosition]
<dim>›</> <dim>src/</></>f</><dim>ile-1.js</>
[MOCK - cursorLeft]
pattern › fi
[MOCK - cursorSavePosition]
[MOCK - cursorLeft]
<dim>›</> <dim>src/</></>f</><dim>ile-2.js</>
<moveCursorToRow6Column13>
<restoreCursorPosition>
<eraseLine>
<moveCursorToColumn1>
<eraseScreenDown>
<dim> pattern ›</> fi
<saveCursorPosition>
<moveCursorToColumn1>
Pattern matches 2 files
› src/file-1.js
› src/file-2.js
[MOCK - cursorTo(13, 5)]
[MOCK - cursorRestorePosition]
<dim>›</> <dim>src/</></>fi</><dim>le-1.js</>
[MOCK - cursorLeft]
pattern › fi
[MOCK - cursorSavePosition]
[MOCK - cursorLeft]
<dim>›</> <dim>src/</></>fi</><dim>le-2.js</>
<moveCursorToRow6Column14>
<restoreCursorPosition>
<eraseLine>
<moveCursorToColumn1>
<eraseScreenDown>
<dim> pattern ›</> fi
<saveCursorPosition>
<moveCursorToColumn1>
Pattern matches 2 files
src/file-1.js
<dim>›</> <black><backgroundYellow>src/file-1.js</></>
› src/file-2.js
[MOCK - cursorTo(13, 5)]
[MOCK - cursorRestorePosition]
<dim>›</> <dim>src/</></>fi</><dim>le-2.js</>
<moveCursorToRow6Column14>
<restoreCursorPosition>
"
`;
exports[`file matching is case insensitive 1`] = `
[MOCK - cursorLeft]
pattern › fI
[MOCK - cursorSavePosition]
[MOCK - cursorLeft]
"<eraseLine>
<moveCursorToColumn1>
<eraseScreenDown>
<dim> pattern ›</> fI
<saveCursorPosition>
<moveCursorToColumn1>
Pattern matches 2 files
src/file-1.js
<dim>›</> <dim>src/</></>fi</><dim>le-1.js</>
› src/file-2.js
[MOCK - cursorTo(13, 5)]
[MOCK - cursorRestorePosition]
<dim>›</> <dim>src/</></>fi</><dim>le-2.js</>
<moveCursorToRow6Column14>
<restoreCursorPosition>
"
`;
exports[`shows the correct initial state 1`] = `
[MOCK - cursorHide]
[MOCK - clear]
Pattern Mode Usage
› Press Esc to exit pattern mode.
› Press Enter to filter by a filenames regex pattern.
"<hideCursor>
<clearTerminal>
[MOCK - cursorShow]
<bold>Pattern Mode Usage</>
<dim>› Press</> Esc <dim>to exit pattern mode.</>
<dim>› Press</> Enter <dim>to filter by a filenames regex pattern.</>
[MOCK - cursorLeft]
pattern ›
[MOCK - cursorSavePosition]
[MOCK - cursorLeft]
<showCursor>
<eraseLine>
<moveCursorToColumn1>
<eraseScreenDown>
<dim> pattern ›</>
<saveCursorPosition>
<moveCursorToColumn1>
Start typing to filter by a filename regex pattern.
[MOCK - cursorTo(11, 5)]
[MOCK - cursorRestorePosition]
<italic><yellow>Start typing to filter by a filename regex pattern.</></>
<moveCursorToRow6Column12>
<restoreCursorPosition>
"
`;
25 changes: 0 additions & 25 deletions src/file_name_plugin/__tests__/plugin.test.ts
@@ -1,34 +1,9 @@
import { KEYS } from 'jest-watcher';
import type { Config } from '@jest/types';
import { jest } from '@jest/globals';

let pluginTester: typeof import('../../test_utils/pluginTester').default = null;
let FileNamePlugin: typeof import('../plugin').default = null;

jest.unstable_mockModule('ansi-escapes', () => ({
default: {
clearScreen: '[MOCK - clearScreen]',
cursorDown: (count = 1) => `[MOCK - cursorDown(${count})]`,
cursorLeft: '[MOCK - cursorLeft]',
cursorHide: '[MOCK - cursorHide]',
cursorRestorePosition: '[MOCK - cursorRestorePosition]',
cursorSavePosition: '[MOCK - cursorSavePosition]',
cursorShow: '[MOCK - cursorShow]',
cursorTo: (x, y) => `[MOCK - cursorTo(${x}, ${y})]`,
},
}));

jest.doMock('ansi-escapes', () => ({
clearScreen: '[MOCK - clearScreen]',
cursorDown: (count = 1) => `[MOCK - cursorDown(${count})]`,
cursorLeft: '[MOCK - cursorLeft]',
cursorHide: '[MOCK - cursorHide]',
cursorRestorePosition: '[MOCK - cursorRestorePosition]',
cursorSavePosition: '[MOCK - cursorSavePosition]',
cursorShow: '[MOCK - cursorShow]',
cursorTo: (x, y) => `[MOCK - cursorTo(${x}, ${y})]`,
}));

const projects: Config.ProjectConfig[] = [
{
config: {
Expand Down

0 comments on commit a0ac757

Please sign in to comment.