|
| 1 | +import { expect } from 'vitest' |
| 2 | +import { StableTestFileOrderSorter } from '../../test-utils' |
| 3 | +import { readCoverageMap, runVitest, test } from '../utils' |
| 4 | + |
| 5 | +test('module offset is set correctly when module import is pending (#10581)', async () => { |
| 6 | + await runVitest({ |
| 7 | + include: [ |
| 8 | + 'fixtures/test/slow-module-import-awaited.test.ts', |
| 9 | + 'fixtures/test/slow-module-import-pending.test.ts', |
| 10 | + ], |
| 11 | + fileParallelism: false, |
| 12 | + sequence: { sequencer: StableTestFileOrderSorter }, |
| 13 | + coverage: { reporter: 'json' }, |
| 14 | + }) |
| 15 | + |
| 16 | + const coverageMap = await readCoverageMap() |
| 17 | + expect(coverageMap.files()).toMatchInlineSnapshot(` |
| 18 | + [ |
| 19 | + "<process-cwd>/fixtures/src/slow-module-imported.ts", |
| 20 | + "<process-cwd>/fixtures/src/slow-module.ts", |
| 21 | + ] |
| 22 | + `) |
| 23 | + |
| 24 | + const fileCoverage = coverageMap.fileCoverageFor('<process-cwd>/fixtures/src/slow-module-imported.ts') |
| 25 | + |
| 26 | + /** {@link file://./../fixtures/src/slow-module-imported.ts} */ |
| 27 | + const lineCoverage = fileCoverage.getLineCoverage() |
| 28 | + |
| 29 | + expect.soft(lineCoverage['4']).toBe(0) |
| 30 | + expect.soft(lineCoverage['8']).toBe(0) |
| 31 | + |
| 32 | + expect.soft(lineCoverage['12']).toBe(1) |
| 33 | + expect.soft(lineCoverage['13']).toBe(0) |
| 34 | + expect.soft(lineCoverage['16']).toBe(1) |
| 35 | +}) |
0 commit comments