forked from storybookjs/storybook
/
utils.test.ts
26 lines (24 loc) 路 875 Bytes
/
utils.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
import { parseList } from '../utils';
describe('parseList', () => {
test.each`
source | expected
${'item1,item2, item3'} | ${['item1', 'item2', 'item3']}
${'item1 , item2, item3 '} | ${['item1', 'item2', 'item3']}
`(`Items will be trimmed, source "$source" should return $expected`, ({ source, expected }) => {
const result = parseList(source);
expect(result).toEqual(expected);
});
test.each`
source | expected
${'item1,item2, '} | ${['item1', 'item2']}
${'item1, ,item3 '} | ${['item1', 'item3']}
${'item1,,item3 '} | ${['item1', 'item3']}
${'item1,, '} | ${['item1']}
`(
`Empty items will be stripped, source "$source" should return $expected`,
({ source, expected }) => {
const result = parseList(source);
expect(result).toEqual(expected);
}
);
});