From 3c20290e492deb3b9c73b639f15fb395ff2934f7 Mon Sep 17 00:00:00 2001 From: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> Date: Thu, 15 Dec 2022 21:48:38 -0800 Subject: [js parser] Fix bug where `const {resolve} = require` throws "require is not defined" --- test/bun.js/transpiler.test.js | 25 +++++++++++++++++++++---- 1 file changed, 21 insertions(+), 4 deletions(-) (limited to 'test') diff --git a/test/bun.js/transpiler.test.js b/test/bun.js/transpiler.test.js index 02d4f11e2..dca0e1a59 100644 --- a/test/bun.js/transpiler.test.js +++ b/test/bun.js/transpiler.test.js @@ -1067,19 +1067,36 @@ export const { dead } = { dead: "hello world!" }; `export const foo = require('bar.node')`, `export const foo = import.meta.require("bar.node")`, ); + expectBunPrinted_( + `export const foo = require('bar.node')`, + `export const foo = import.meta.require("bar.node")`, + ); }); - it("require.resolve -> import.meta.resolveSync", () => { + it("require.resolve -> import.meta.require.resolve", () => { expectBunPrinted_( `export const foo = require.resolve('bar.node')`, - `export const foo = import.meta.resolveSync("bar.node")`, + `export const foo = import.meta.require.resolve("bar.node")`, ); }); - it('require.resolve(path, {paths: ["blah"]}) -> import.meta.resolveSync', () => { + it('require.resolve(path, {paths: ["blah"]}) -> import.meta.require.resolve', () => { expectBunPrinted_( `export const foo = require.resolve('bar.node', {paths: ["blah"]})`, - `export const foo = import.meta.resolveSync("bar.node", { paths: ["blah"] })`, + `export const foo = import.meta.require.resolve("bar.node", { paths: ["blah"] })`, + ); + }); + + it("require is defined", () => { + expectBunPrinted_( + ` +const {resolve} = require; +console.log(resolve.length) + `.trim(), + ` +const { resolve } = import.meta.require; +console.log(resolve.length) + `.trim(), ); }); }); -- cgit v1.2.3