2024-07-14 23:37:10 -04:00
|
|
|
'use strict';
|
2025-11-18 00:17:14 +01:00
|
|
|
const common = require('../common');
|
2024-07-14 23:37:10 -04:00
|
|
|
const tmpdir = require('../common/tmpdir');
|
2025-11-18 00:17:14 +01:00
|
|
|
const assert = require('node:assert');
|
2024-07-14 23:37:10 -04:00
|
|
|
const { writeFileSync } = require('node:fs');
|
|
|
|
|
const { suite, test } = require('node:test');
|
|
|
|
|
|
|
|
|
|
tmpdir.refresh();
|
|
|
|
|
|
2025-11-18 00:17:14 +01:00
|
|
|
suite('suite', common.mustCall((t) => {
|
|
|
|
|
assert.strictEqual(t.filePath, __filename);
|
2024-07-14 23:37:10 -04:00
|
|
|
|
|
|
|
|
test('test', (t) => {
|
2025-11-18 00:17:14 +01:00
|
|
|
assert.strictEqual(t.filePath, __filename);
|
2024-07-14 23:37:10 -04:00
|
|
|
|
|
|
|
|
t.test('subtest', (t) => {
|
2025-11-18 00:17:14 +01:00
|
|
|
assert.strictEqual(t.filePath, __filename);
|
2024-07-14 23:37:10 -04:00
|
|
|
|
|
|
|
|
t.test('subsubtest', (t) => {
|
2025-11-18 00:17:14 +01:00
|
|
|
assert.strictEqual(t.filePath, __filename);
|
2024-07-14 23:37:10 -04:00
|
|
|
});
|
|
|
|
|
});
|
|
|
|
|
});
|
2025-11-18 00:17:14 +01:00
|
|
|
}));
|
2024-07-14 23:37:10 -04:00
|
|
|
|
|
|
|
|
test((t) => {
|
2025-11-18 00:17:14 +01:00
|
|
|
assert.strictEqual(t.filePath, __filename);
|
2024-07-14 23:37:10 -04:00
|
|
|
});
|
|
|
|
|
|
|
|
|
|
const importedTestFile = tmpdir.resolve('temp.js');
|
|
|
|
|
writeFileSync(importedTestFile, `
|
|
|
|
|
'use strict';
|
|
|
|
|
const { strictEqual } = require('node:assert');
|
|
|
|
|
const { suite, test } = require('node:test');
|
|
|
|
|
|
|
|
|
|
suite('imported suite', (t) => {
|
|
|
|
|
strictEqual(t.filePath, ${JSON.stringify(__filename)});
|
|
|
|
|
|
|
|
|
|
test('imported test', (t) => {
|
|
|
|
|
strictEqual(t.filePath, ${JSON.stringify(__filename)});
|
|
|
|
|
|
|
|
|
|
t.test('imported subtest', (t) => {
|
|
|
|
|
strictEqual(t.filePath, ${JSON.stringify(__filename)});
|
|
|
|
|
|
|
|
|
|
t.test('imported subsubtest', (t) => {
|
|
|
|
|
strictEqual(t.filePath, ${JSON.stringify(__filename)});
|
|
|
|
|
});
|
|
|
|
|
});
|
|
|
|
|
});
|
|
|
|
|
});
|
|
|
|
|
`);
|
|
|
|
|
require(importedTestFile);
|