forked from jestjs/jest
/
ConvertAnsi.test.ts
58 lines (49 loc) 路 1.48 KB
/
ConvertAnsi.test.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
/**
* Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
import ansiStyle = require('ansi-styles');
import prettyFormat, {plugins} from '../';
const {ConvertAnsi} = plugins;
const prettyFormatResult = (val: string) =>
prettyFormat(val, {
plugins: [ConvertAnsi],
});
describe('ConvertAnsi plugin', () => {
it('supports style.red', () => {
expect(
prettyFormatResult(
`${ansiStyle.red.open} foo content ${ansiStyle.red.close}`,
),
).toEqual('"<red> foo content </>"');
});
it('supports style.green', () => {
expect(
prettyFormatResult(
`${ansiStyle.green.open} foo content ${ansiStyle.green.close}`,
),
).toEqual('"<green> foo content </>"');
});
it('supports style.reset', () => {
expect(
prettyFormatResult(
`${ansiStyle.reset.open} foo content ${ansiStyle.reset.close}`,
),
).toEqual('"</> foo content </>"');
});
it('supports style.bold', () => {
expect(prettyFormatResult(`${ansiStyle.bold.open} foo content`)).toEqual(
'"<bold> foo content"',
);
});
it('supports style.dim', () => {
expect(prettyFormatResult(`${ansiStyle.dim.open} foo content`)).toEqual(
'"<dim> foo content"',
);
});
it('does not support other colors', () => {
expect(prettyFormatResult(`${ansiStyle.blue.open}`)).toEqual('""');
});
});