diff options
author | Kevin (Kun) "Kassimo" Qian <kevinkassimo@gmail.com> | 2019-11-18 22:54:20 -0800 |
---|---|---|
committer | Ry Dahl <ry@tinyclouds.org> | 2019-11-19 01:54:20 -0500 |
commit | e73a82dc42b3d80bea42482e227c31e5ef01e273 (patch) | |
tree | 5c3f26bc19d4ce6b3e42b2fe48f47e1cccbb29fd /std/node/require_test.ts | |
parent | e6fdb2628fdeeae0c7b06c25214b2edba96364dd (diff) |
feat(std/node) add CommonJS require (#3380)
Diffstat (limited to 'std/node/require_test.ts')
-rw-r--r-- | std/node/require_test.ts | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/std/node/require_test.ts b/std/node/require_test.ts new file mode 100644 index 000000000..7cac6d6b2 --- /dev/null +++ b/std/node/require_test.ts @@ -0,0 +1,27 @@ +import { test } from "../testing/mod.ts"; +import { assertEquals, assert } from "../testing/asserts.ts"; +import { makeRequire } from "./require.ts"; + +const selfPath = window.unescape(import.meta.url.substring(7)); +// TS compiler would try to resolve if function named "require" +// Thus suffixing it with require_ to fix this... +const require_ = makeRequire(selfPath); + +test(function requireSuccess() { + const result = require_("./node/tests/cjs/cjs_a.js"); + assert("helloA" in result); + assert("helloB" in result); + assert("C" in result); + assert("leftPad" in result); + assertEquals(result.helloA(), "A"); + assertEquals(result.helloB(), "B"); + assertEquals(result.C, "C"); + assertEquals(result.leftPad("pad", 4), " pad"); +}); + +test(function requireCycle() { + const resultA = require_("./node/tests/cjs/cjs_cycle_a"); + const resultB = require_("./node/tests/cjs/cjs_cycle_b"); + assert(resultA); + assert(resultB); +}); |