| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- import { expect } from 'expect';
- import { fileEqual } from './create-file';
- // eslint-disable-next-line @typescript-eslint/require-await -- async iterable
- async function *createSource(input: string[]) {
- for (const line of input) {
- yield line;
- }
- }
- async function test(a: string[], b: string[], expected: boolean) {
- expect((await fileEqual(a, createSource(b)))).toBe(expected);
- }
- describe('fileEqual', () => {
- it('same', () => test(
- ['A', 'B'],
- ['A', 'B'],
- true
- ));
- it('ignore comment', async () => {
- await test(
- ['# A', 'B'],
- ['# B', 'B'],
- true
- );
- await test(
- ['# A', '# C', 'B'],
- ['# A', '# D', 'B'],
- true
- );
- });
- it('comment more', () => test(
- ['# A', 'B'],
- ['# A', '# B', 'B'],
- false
- ));
- it('comment less', () => test(
- ['# A', '# B', 'B'],
- ['# A', 'B'],
- false
- ));
- it('larger', () => test(
- ['A', 'B'],
- ['A', 'B', 'C'],
- false
- ));
- it('smaller', () => test(
- ['A', 'B', 'C'],
- ['A', 'B'],
- false
- ));
- it('eol more', () => test(
- ['A', 'B'],
- ['A', 'B', ''],
- false
- ));
- it('eol less', () => test(
- ['A', 'B', ''],
- ['A', 'B'],
- false
- ));
- });
|