diff options
Diffstat (limited to 'cli/tests/compiler_api_test.ts')
-rw-r--r-- | cli/tests/compiler_api_test.ts | 57 |
1 files changed, 53 insertions, 4 deletions
diff --git a/cli/tests/compiler_api_test.ts b/cli/tests/compiler_api_test.ts index c6e7de651..00116e7e1 100644 --- a/cli/tests/compiler_api_test.ts +++ b/cli/tests/compiler_api_test.ts @@ -2,6 +2,7 @@ import { assert, assertEquals, + assertStringIncludes, assertThrowsAsync, } from "../../test_util/std/testing/asserts.ts"; @@ -188,7 +189,10 @@ Deno.test({ assertEquals(diagnostics.length, 0); assert(!ignoredOptions); assertEquals(stats.length, 12); - assertEquals(Object.keys(files), ["deno:///bundle.js"]); + assertEquals( + Object.keys(files).sort(), + ["deno:///bundle.js", "deno:///bundle.js.map"].sort(), + ); assert(files["deno:///bundle.js"].includes(`const bar1 = "bar"`)); }, }); @@ -205,7 +209,10 @@ Deno.test({ assertEquals(diagnostics.length, 0); assert(!ignoredOptions); assertEquals(stats.length, 12); - assertEquals(Object.keys(files), ["deno:///bundle.js"]); + assertEquals( + Object.keys(files).sort(), + ["deno:///bundle.js", "deno:///bundle.js.map"].sort(), + ); assert(files["deno:///bundle.js"].length); }, }); @@ -226,7 +233,10 @@ Deno.test({ assertEquals(diagnostics.length, 0); assert(!ignoredOptions); assertEquals(stats.length, 12); - assertEquals(Object.keys(files), ["deno:///bundle.js"]); + assertEquals( + Object.keys(files).sort(), + ["deno:///bundle.js.map", "deno:///bundle.js"].sort(), + ); assert(files["deno:///bundle.js"].includes(`const bar1 = "bar"`)); }, }); @@ -333,9 +343,10 @@ Deno.test({ }); assert(diagnostics); assertEquals(diagnostics.length, 0); - assertEquals(Object.keys(files).length, 1); + assertEquals(Object.keys(files).length, 2); assert(files["deno:///bundle.js"].startsWith("(function() {\n")); assert(files["deno:///bundle.js"].endsWith("})();\n")); + assert(files["deno:///bundle.js.map"]); }, }); @@ -357,3 +368,41 @@ Deno.test({ ); }, }); + +Deno.test({ + name: `Deno.emit() - support source maps with bundle option`, + async fn() { + { + const { diagnostics, files } = await Deno.emit("/a.ts", { + bundle: "classic", + sources: { + "/a.ts": `import { b } from "./b.ts"; + console.log(b);`, + "/b.ts": `export const b = "b";`, + }, + compilerOptions: { + inlineSourceMap: true, + sourceMap: false, + }, + }); + assert(diagnostics); + assertEquals(diagnostics.length, 0); + assertEquals(Object.keys(files).length, 1); + assertStringIncludes(files["deno:///bundle.js"], "sourceMappingURL"); + } + + const { diagnostics, files } = await Deno.emit("/a.ts", { + bundle: "classic", + sources: { + "/a.ts": `import { b } from "./b.ts"; + console.log(b);`, + "/b.ts": `export const b = "b";`, + }, + }); + assert(diagnostics); + assertEquals(diagnostics.length, 0); + assertEquals(Object.keys(files).length, 2); + assert(files["deno:///bundle.js"]); + assert(files["deno:///bundle.js.map"]); + }, +}); |