From c79b7ba3452ec3926f3b8ffe18d5a1bc553a51d9 Mon Sep 17 00:00:00 2001 From: Vladimir Sheremet Date: Thu, 3 Aug 2023 11:07:18 +0200 Subject: [PATCH] chore: cleanup --- test/test-utils/index.ts | 11 ++++++++++- .../src/external/package-null/package-null.js | 1 + test/vm-threads/test/require-cjs.test.js | 4 ++-- 3 files changed, 13 insertions(+), 3 deletions(-) create mode 100644 test/vm-threads/src/external/package-null/package-null.js diff --git a/test/test-utils/index.ts b/test/test-utils/index.ts index 7764e0b61112..fb4ffbeea0f6 100644 --- a/test/test-utils/index.ts +++ b/test/test-utils/index.ts @@ -1,11 +1,13 @@ import { Console } from 'node:console' import { Writable } from 'node:stream' import fs from 'node:fs' +import { fileURLToPath } from 'node:url' import { type UserConfig, type VitestRunMode, afterEach } from 'vitest' import type { Vitest } from 'vitest/node' import { startVitest } from 'vitest/node' import { type Options, execa } from 'execa' import stripAnsi from 'strip-ansi' +import { dirname, resolve } from 'pathe' export async function runVitest(config: UserConfig, cliFilters: string[] = [], mode: VitestRunMode = 'test') { // Reset possible previous runs @@ -215,7 +217,8 @@ afterEach(() => { fs.writeFileSync(file, content, 'utf-8') }) createdFiles.forEach((file) => { - fs.unlinkSync(file) + if (fs.existsSync(file)) + fs.unlinkSync(file) }) originalFiles.clear() createdFiles.clear() @@ -223,6 +226,7 @@ afterEach(() => { export function createFile(file: string, content: string) { createdFiles.add(file) + fs.mkdirSync(dirname(file), { recursive: true }) fs.writeFileSync(file, content, 'utf-8') } @@ -232,3 +236,8 @@ export function editFile(file: string, callback: (content: string) => string) { originalFiles.set(file, content) fs.writeFileSync(file, callback(content), 'utf-8') } + +export function resolvePath(baseUrl: string, path: string) { + const filename = fileURLToPath(baseUrl) + return resolve(dirname(filename), path) +} diff --git a/test/vm-threads/src/external/package-null/package-null.js b/test/vm-threads/src/external/package-null/package-null.js new file mode 100644 index 000000000000..a8653a9c9264 --- /dev/null +++ b/test/vm-threads/src/external/package-null/package-null.js @@ -0,0 +1 @@ +module.exports = 42 diff --git a/test/vm-threads/test/require-cjs.test.js b/test/vm-threads/test/require-cjs.test.js index 40b455803997..905a3bf6e528 100644 --- a/test/vm-threads/test/require-cjs.test.js +++ b/test/vm-threads/test/require-cjs.test.js @@ -1,11 +1,11 @@ import { createRequire } from 'node:module' import { describe, expect, test } from 'vitest' -import { createFile } from '../../test-utils' +import { createFile, resolvePath } from '../../test-utils' const require = createRequire(import.meta.url) test('can require if package.json is null', () => { - createFile('src/external/package-null/package-null.js', 'null') + createFile(resolvePath(import.meta.url, '../src/external/package-null/package-null.json'), 'null') expect(() => require('../src/external/package-null/package-null.js')).not.toThrow() })