/
tsconfig.ts
50 lines (43 loc) 路 1.35 KB
/
tsconfig.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
import test from 'ava';
import { rollup } from 'rollup';
import typescript from '..';
import { getCode, onwarn } from '../../../util/test';
test.beforeEach(() => process.chdir(__dirname));
test.serial('inline config without tsconfig + rootDir', async (t) => {
const bundle = await rollup({
input: 'fixtures/basic/main.ts',
plugins: [
typescript({
declaration: true,
declarationDir: 'fixtures/basic/dist/types',
exclude: 'fixtures/basic/dist/types',
include: 'fixtures/basic/*.ts',
tsconfig: false,
rootDir: 'fixtures/basic'
})
],
onwarn
});
const files = await getCode(bundle, { format: 'esm', dir: 'fixtures/basic/dist' }, true);
const [, { source }] = files;
t.snapshot(files.map(({ fileName }) => fileName));
t.true((source as string)?.includes('declare const answer = 42;'));
});
test.serial('inline config without tsconfig without rootDir fails', async (t) => {
const fail = () =>
rollup({
input: 'fixtures/basic/main.ts',
plugins: [
typescript({
declaration: true,
declarationDir: 'fixtures/basic/dist/types',
exclude: 'fixtures/basic/dist/types',
include: 'fixtures/basic/*.ts',
tsconfig: false
})
],
onwarn
});
const error = await t.throwsAsync(fail);
t.snapshot(error);
});