Skip to content

Commit

Permalink
test: refactor to await using
Browse files Browse the repository at this point in the history
  • Loading branch information
privatenumber committed May 17, 2024
1 parent f327f64 commit a038611
Show file tree
Hide file tree
Showing 17 changed files with 125 additions and 189 deletions.
10 changes: 4 additions & 6 deletions tests/specs/builds/bin.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,8 @@ import { pkgroll } from '../../utils.js';

export default testSuite(({ describe }, nodePath: string) => {
describe('bin', ({ test }) => {
test('supports single path', async ({ onTestFinish }) => {
const fixture = await createFixture('./tests/fixture-package');
onTestFinish(async () => await fixture.rm());
test('supports single path', async () => {
await using fixture = await createFixture('./tests/fixture-package');

await fixture.writeJson('package.json', {
bin: './dist/index.mjs',
Expand Down Expand Up @@ -36,9 +35,8 @@ export default testSuite(({ describe }, nodePath: string) => {
});
});

test('supports object', async ({ onTestFinish }) => {
const fixture = await createFixture('./tests/fixture-package');
onTestFinish(async () => await fixture.rm());
test('supports object', async () => {
await using fixture = await createFixture('./tests/fixture-package');

await fixture.writeJson('package.json', {
bin: {
Expand Down
10 changes: 4 additions & 6 deletions tests/specs/builds/clean-dist.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,8 @@ import { pkgroll, installTypeScript } from '../../utils.js';

export default testSuite(({ describe }, nodePath: string) => {
describe('clean dist', ({ test }) => {
test('no flag', async ({ onTestFinish }) => {
const fixture = await createFixture('./tests/fixture-package');
onTestFinish(async () => await fixture.rm());
test('no flag', async () => {
await using fixture = await createFixture('./tests/fixture-package');

installTypeScript(fixture.path);

Expand Down Expand Up @@ -54,9 +53,8 @@ export default testSuite(({ describe }, nodePath: string) => {
expect(await fixture.exists('dist/nested2/index.d.ts')).toBe(true);
});

test('with flag', async ({ onTestFinish }) => {
const fixture = await createFixture('./tests/fixture-package');
onTestFinish(async () => await fixture.rm());
test('with flag', async () => {
await using fixture = await createFixture('./tests/fixture-package');

installTypeScript(fixture.path);

Expand Down
40 changes: 16 additions & 24 deletions tests/specs/builds/dependencies.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,8 @@ import { pkgroll, installTypeScript } from '../../utils.js';

export default testSuite(({ describe }, nodePath: string) => {
describe('dependencies', ({ test }) => {
test('externalize dependencies', async ({ onTestFinish }) => {
const fixture = await createFixture('./tests/fixture-package');
onTestFinish(async () => await fixture.rm());
test('externalize dependencies', async () => {
await using fixture = await createFixture('./tests/fixture-package');

await fixture.writeJson('package.json', {
main: './dist/dependency-external.js',
Expand All @@ -27,8 +26,8 @@ export default testSuite(({ describe }, nodePath: string) => {
expect(content).toMatch('require(\'@org/name/path\')');
});

test('externalize types', async ({ onTestFinish }) => {
const fixture = await createFixture({
test('externalize types', async () => {
await using fixture = await createFixture({
'package.json': JSON.stringify({
types: 'dist/index.d.ts',
dependencies: {
Expand All @@ -47,7 +46,6 @@ export default testSuite(({ describe }, nodePath: string) => {
export const b: typeB;
`,
});
onTestFinish(async () => await fixture.rm());

installTypeScript(fixture.path);

Expand All @@ -63,8 +61,8 @@ export default testSuite(({ describe }, nodePath: string) => {
expect(content).toMatch('from \'@square-icons/react\'');
});

test('bundle in types if only in devDependency', async ({ onTestFinish }) => {
const fixture = await createFixture({
test('bundle in types if only in devDependency', async () => {
await using fixture = await createFixture({
'package.json': JSON.stringify({
types: 'dist/index.d.ts',
devDependencies: {
Expand All @@ -76,7 +74,6 @@ export default testSuite(({ describe }, nodePath: string) => {
},
'src/index.d.ts': 'export { A } from "react"',
});
onTestFinish(async () => await fixture.rm());

installTypeScript(fixture.path);

Expand All @@ -91,8 +88,8 @@ export default testSuite(({ describe }, nodePath: string) => {
expect(content).toBe('declare const A: { b: number };\n\nexport { A };\n');
});

test('externalize dependency & type despite devDependency type', async ({ onTestFinish }) => {
const fixture = await createFixture({
test('externalize dependency & type despite devDependency type', async () => {
await using fixture = await createFixture({
'package.json': JSON.stringify({
main: 'dist/index.js',
types: 'dist/index.d.ts',
Expand All @@ -113,7 +110,6 @@ export default testSuite(({ describe }, nodePath: string) => {
},
'src/index.ts': 'export { A } from "react"',
});
onTestFinish(async () => await fixture.rm());

installTypeScript(fixture.path);

Expand All @@ -134,9 +130,8 @@ export default testSuite(({ describe }, nodePath: string) => {
expect(contentTypes).toBe('export { A } from \'react\';\n');
});

test('dual package - require', async ({ onTestFinish }) => {
const fixture = await createFixture('./tests/fixture-package');
onTestFinish(async () => await fixture.rm());
test('dual package - require', async () => {
await using fixture = await createFixture('./tests/fixture-package');

await fixture.writeJson('package.json', {
main: './dist/dependency-exports-require.js',
Expand All @@ -154,9 +149,8 @@ export default testSuite(({ describe }, nodePath: string) => {
expect(content).toMatch('cjs');
});

test('dual package - import', async ({ onTestFinish }) => {
const fixture = await createFixture('./tests/fixture-package');
onTestFinish(async () => await fixture.rm());
test('dual package - import', async () => {
await using fixture = await createFixture('./tests/fixture-package');

await fixture.writeJson('package.json', {
main: './dist/dependency-exports-import.js',
Expand All @@ -174,9 +168,8 @@ export default testSuite(({ describe }, nodePath: string) => {
expect(content).toMatch('esm');
});

test('imports map - default', async ({ onTestFinish }) => {
const fixture = await createFixture('./tests/fixture-package');
onTestFinish(async () => await fixture.rm());
test('imports map - default', async () => {
await using fixture = await createFixture('./tests/fixture-package');

await fixture.writeJson('package.json', {
main: './dist/dependency-imports-map.js',
Expand All @@ -194,9 +187,8 @@ export default testSuite(({ describe }, nodePath: string) => {
expect(content).toMatch('default');
});

test('imports map - node', async ({ onTestFinish }) => {
const fixture = await createFixture('./tests/fixture-package');
onTestFinish(async () => await fixture.rm());
test('imports map - node', async () => {
await using fixture = await createFixture('./tests/fixture-package');

await fixture.writeJson('package.json', {
main: './dist/dependency-imports-map.js',
Expand Down
5 changes: 2 additions & 3 deletions tests/specs/builds/env.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,8 @@ import { pkgroll } from '../../utils.js';

export default testSuite(({ describe }, nodePath: string) => {
describe('env', ({ test }) => {
test('dead code elimination via env', async ({ onTestFinish }) => {
const fixture = await createFixture('./tests/fixture-package');
onTestFinish(async () => await fixture.rm());
test('dead code elimination via env', async () => {
await using fixture = await createFixture('./tests/fixture-package');

await fixture.writeJson('package.json', {
main: './dist/conditional-require.js',
Expand Down
5 changes: 2 additions & 3 deletions tests/specs/builds/minification.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,8 @@ import { pkgroll } from '../../utils.js';

export default testSuite(({ describe }, nodePath: string) => {
describe('minification', ({ test }) => {
test('minification', async ({ onTestFinish }) => {
const fixture = await createFixture('./tests/fixture-package');
onTestFinish(async () => await fixture.rm());
test('minification', async () => {
await using fixture = await createFixture('./tests/fixture-package');

await fixture.writeJson('package.json', {
main: './dist/target.js',
Expand Down
35 changes: 14 additions & 21 deletions tests/specs/builds/output-commonjs.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,8 @@ import { pkgroll } from '../../utils.js';

export default testSuite(({ describe }, nodePath: string) => {
describe('output: commonjs', ({ test }) => {
test('{ type: commonjs, field: main, srcExt: js, distExt: js }', async ({ onTestFinish }) => {
const fixture = await createFixture('./tests/fixture-package');
onTestFinish(async () => await fixture.rm());
test('{ type: commonjs, field: main, srcExt: js, distExt: js }', async () => {
await using fixture = await createFixture('./tests/fixture-package');

await fixture.writeJson('package.json', {
main: './dist/index.js',
Expand All @@ -24,9 +23,8 @@ export default testSuite(({ describe }, nodePath: string) => {
expect(content).toMatch('module.exports =');
});

test('{ type: commonjs, field: main, srcExt: mts, distExt: js }', async ({ onTestFinish }) => {
const fixture = await createFixture('./tests/fixture-package');
onTestFinish(async () => await fixture.rm());
test('{ type: commonjs, field: main, srcExt: mts, distExt: js }', async () => {
await using fixture = await createFixture('./tests/fixture-package');

await fixture.writeJson('package.json', {
main: './dist/mts.js',
Expand All @@ -44,9 +42,8 @@ export default testSuite(({ describe }, nodePath: string) => {
expect(content).toMatch('exports.sayHello =');
});

test('{ type: commonjs, field: main, srcExt: cts, distExt: js }', async ({ onTestFinish }) => {
const fixture = await createFixture('./tests/fixture-package');
onTestFinish(async () => await fixture.rm());
test('{ type: commonjs, field: main, srcExt: cts, distExt: js }', async () => {
await using fixture = await createFixture('./tests/fixture-package');

await fixture.writeJson('package.json', {
main: './dist/cts.js',
Expand All @@ -64,9 +61,8 @@ export default testSuite(({ describe }, nodePath: string) => {
expect(content).toMatch('exports.sayHello =');
});

test('{ type: commonjs, field: main, srcExt: cts, distExt: cjs }', async ({ onTestFinish }) => {
const fixture = await createFixture('./tests/fixture-package');
onTestFinish(async () => await fixture.rm());
test('{ type: commonjs, field: main, srcExt: cts, distExt: cjs }', async () => {
await using fixture = await createFixture('./tests/fixture-package');

await fixture.writeJson('package.json', {
main: './dist/cts.cjs',
Expand All @@ -84,9 +80,8 @@ export default testSuite(({ describe }, nodePath: string) => {
expect(content).toMatch('exports.sayHello =');
});

test('{ type: module, field: main, srcExt: js, distExt: cjs }', async ({ onTestFinish }) => {
const fixture = await createFixture('./tests/fixture-package');
onTestFinish(async () => await fixture.rm());
test('{ type: module, field: main, srcExt: js, distExt: cjs }', async () => {
await using fixture = await createFixture('./tests/fixture-package');

await fixture.writeJson('package.json', {
type: 'module',
Expand All @@ -105,9 +100,8 @@ export default testSuite(({ describe }, nodePath: string) => {
expect(content).toMatch('module.exports =');
});

test('{ type: commonjs, field: main, srcExt: mjs, distExt: cjs }', async ({ onTestFinish }) => {
const fixture = await createFixture('./tests/fixture-package');
onTestFinish(async () => await fixture.rm());
test('{ type: commonjs, field: main, srcExt: mjs, distExt: cjs }', async () => {
await using fixture = await createFixture('./tests/fixture-package');

await fixture.writeJson('package.json', {
main: './dist/mjs.cjs',
Expand All @@ -125,9 +119,8 @@ export default testSuite(({ describe }, nodePath: string) => {
expect(content).toMatch('exports.sayHello =');
});

test('nested directory', async ({ onTestFinish }) => {
const fixture = await createFixture('./tests/fixture-package');
onTestFinish(async () => await fixture.rm());
test('nested directory', async () => {
await using fixture = await createFixture('./tests/fixture-package');

await fixture.writeJson('package.json', {
main: './dist/nested/index.js',
Expand Down
5 changes: 2 additions & 3 deletions tests/specs/builds/output-dual.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,8 @@ import { pkgroll } from '../../utils.js';

export default testSuite(({ describe }, nodePath: string) => {
describe('output: commonjs & module', ({ test }) => {
test('dual', async ({ onTestFinish }) => {
const fixture = await createFixture('./tests/fixture-package');
onTestFinish(async () => await fixture.rm());
test('dual', async () => {
await using fixture = await createFixture('./tests/fixture-package');

await fixture.writeJson('package.json', {
exports: {
Expand Down
Loading

0 comments on commit a038611

Please sign in to comment.