Skip to content

Commit 674f17e

Browse files
committed
1 parent 2e4d047 commit 674f17e

File tree

3 files changed

+28
-0
lines changed

3 files changed

+28
-0
lines changed

test/js/node/module/node-module-module.test.js

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
import { expect, test } from "bun:test";
2+
import { bunEnv, bunExe } from "harness";
23
import { _nodeModulePaths, builtinModules, isBuiltin, wrap } from "module";
34
import Module from "module";
5+
import path from "path";
46

57
test("builtinModules exists", () => {
68
expect(Array.isArray(builtinModules)).toBe(true);
@@ -57,3 +59,14 @@ test("Module.wrap", () => {
5759
expect(mod.exports.foo).toBe(1);
5860
expect(wrap()).toBe("(function (exports, require, module, __filename, __dirname) { undefined\n});");
5961
});
62+
63+
test("Overwriting _resolveFilename", () => {
64+
const { stdout, exitCode } = Bun.spawnSync({
65+
cmd: [bunExe(), "run", path.join(import.meta.dir, "resolveFilenameOverwrite.cjs")],
66+
env: bunEnv,
67+
stderr: "inherit",
68+
});
69+
70+
expect(stdout.toString().trim().endsWith("--pass--")).toBe(true);
71+
expect(exitCode).toBe(0);
72+
});
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
module.exports = "winner";
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
// This behavior is required for Next.js to work
2+
const eql = require("assert").strictEqual;
3+
const path = require("path");
4+
const Module = require("module");
5+
6+
const original = Module._resolveFilename;
7+
Module._resolveFilename = str => {
8+
eql(str.endsWith("💔"), true);
9+
return path.join(__dirname, "./resolveFilenameOverwrite-fixture.cjs");
10+
};
11+
eql(require("overwriting _resolveFilename broke 💔"), "winner");
12+
Module._resolveFilename = original;
13+
14+
console.log("--pass--");

0 commit comments

Comments
 (0)