summaryrefslogtreecommitdiff
path: root/js/runner_test.ts
diff options
context:
space:
mode:
Diffstat (limited to 'js/runner_test.ts')
-rw-r--r--js/runner_test.ts141
1 files changed, 0 insertions, 141 deletions
diff --git a/js/runner_test.ts b/js/runner_test.ts
deleted file mode 100644
index 5444f31f9..000000000
--- a/js/runner_test.ts
+++ /dev/null
@@ -1,141 +0,0 @@
-import { test, assert, assertEqual } from "./test_util.ts";
-import * as deno from "deno";
-
-// tslint:disable-next-line:no-any
-const Runner = (deno as any)._runner.Runner;
-
-let mockGetOutputStack: string[] = [];
-let mockGetFilenameStack: Array<[string, string]> = [];
-
-// tslint:disable:max-line-length
-const mockOutput = {
- "/root/project/foo/bar.ts": `define(["require", "exports"], function (require, exports) {
- "use strict";
- Object.defineProperty(exports, "__esModule", { value: true });
- exports.foo = "bar";
-});
-//# sourceMappingURL=bar.js.map
-//# sourceURL=/root/project/foo/bar.ts`,
- "/root/project/foo/baz.ts": `define(["require", "exports", "./qat.ts"], function (require, exports, qat) {
- "use strict";
- Object.defineProperty(exports, "__esModule", { value: true });
- exports.foo = qat.foo;
-});
-//# sourceMappingURL=baz.js.map
-//# sourceURL=/root/project/foo/baz.ts`,
- "/root/project/foo/qat.ts": `define(["require", "exports"], function (require, exports) {
- "use strict";
- Object.defineProperty(exports, "__esModule", { value: true });
- exports.foo = "qat";
-});
-//# sourceMappingURL=qat.js.map
-//# sourceURL=/root/project/foo/qat.ts`,
- "/root/project/foo/config.json": `define([], function () {
- return JSON.parse('{"foo":{"bar": true,"baz": ["qat", 1]}}');
-});
-//# sourceURL=/root/project/foo/config.json`,
- "/circular/modA.ts": `define(["require", "exports", "./modB.ts"], function (require, exports, modB) {
- "use strict";
- Object.defineProperty(exports, "__esModule", { value: true });
- exports.foo = modB.foo;
-});
-//# sourceMappingURL=modA.js.map
-//# sourceURL=/circular/modA.ts`,
- "/circular/modB.ts": `define(["require", "exports", "./modA.ts"], function (require, exports, modA) {
- "use strict";
- Object.defineProperty(exports, "__esModule", { value: true });
- if (modA && typeof modA === "object") {
- modA;
- } else {
- throw new Error("Mod A is empty!");
- }
- exports.foo = "bar";
-});
-//# sourceMappingURL=modB.js.map
-//# sourceURL=/circular/modB.ts`
-};
-// tslint:enable
-
-const mockFilenames = {
- "/root/project": {
- "foo/bar.ts": "/root/project/foo/bar.ts",
- "foo/baz.ts": "/root/project/foo/baz.ts",
- "foo/config.json": "/root/project/foo/config.json"
- },
- "/root/project/foo/baz.ts": {
- "./qat.ts": "/root/project/foo/qat.ts"
- },
- "/circular": {
- "modA.ts": "/circular/modA.ts"
- },
- "/circular/modA.ts": {
- "./modB.ts": "/circular/modB.ts"
- },
- "/circular/modB.ts": {
- "./modA.ts": "/circular/modA.ts"
- }
-};
-
-const mockCodeProvider = {
- getOutput(filename: string) {
- mockGetOutputStack.push(filename);
- if (filename in mockOutput) {
- return mockOutput[filename];
- }
- throw new Error("Module not found.");
- },
- getFilename(moduleSpecifier: string, containingFile: string) {
- mockGetFilenameStack.push([moduleSpecifier, containingFile]);
- if (
- containingFile in mockFilenames &&
- moduleSpecifier in mockFilenames[containingFile]
- ) {
- return mockFilenames[containingFile][moduleSpecifier];
- }
- }
-};
-
-function setup() {
- mockGetOutputStack = [];
- mockGetFilenameStack = [];
- return new Runner(mockCodeProvider);
-}
-
-test(function runnerConstruction() {
- const runner = setup();
- assert(runner);
-});
-
-test(function runnerRun() {
- const runner = setup();
- const result = runner.run("foo/bar.ts", "/root/project");
- assertEqual(result, { foo: "bar" });
- assertEqual(mockGetFilenameStack, [["foo/bar.ts", "/root/project"]]);
- assertEqual(mockGetOutputStack, ["/root/project/foo/bar.ts"]);
-});
-
-test(function runnerRunImports() {
- const runner = setup();
- const result = runner.run("foo/baz.ts", "/root/project");
- assertEqual(result, { foo: "qat" });
- assertEqual(mockGetFilenameStack, [
- ["foo/baz.ts", "/root/project"],
- ["./qat.ts", "/root/project/foo/baz.ts"]
- ]);
- assertEqual(mockGetOutputStack, [
- "/root/project/foo/baz.ts",
- "/root/project/foo/qat.ts"
- ]);
-});
-
-test(function runnerRunExportReturn() {
- const runner = setup();
- const result = runner.run("foo/config.json", "/root/project");
- assertEqual(result, { foo: { bar: true, baz: ["qat", 1] } });
-});
-
-test(function runnerCircularReference() {
- const runner = setup();
- const result = runner.run("modA.ts", "/circular");
- assertEqual(result, { foo: "bar" });
-});