diff options
-rw-r--r-- | cli/tests/testdata/compiler_api_test.ts | 16 | ||||
-rw-r--r-- | runtime/js/40_compiler_api.js | 2 |
2 files changed, 17 insertions, 1 deletions
diff --git a/cli/tests/testdata/compiler_api_test.ts b/cli/tests/testdata/compiler_api_test.ts index 168d70ce6..81f049ac1 100644 --- a/cli/tests/testdata/compiler_api_test.ts +++ b/cli/tests/testdata/compiler_api_test.ts @@ -46,6 +46,22 @@ Deno.test({ }); Deno.test({ + name: "Deno.emit() - data url", + async fn() { + const data = + "data:application/javascript;base64,Y29uc29sZS5sb2coImhlbGxvIHdvcmxkIik7"; + const { diagnostics, files, ignoredOptions, stats } = await Deno.emit(data); + assertEquals(diagnostics.length, 0); + assert(!ignoredOptions); + assertEquals(stats.length, 0); + const keys = Object.keys(files); + assertEquals(keys.length, 1); + assertEquals(keys[0], data); + assertStringIncludes(files[keys[0]], 'console.log("hello world");'); + }, +}); + +Deno.test({ name: "Deno.emit() - compiler options effects emit", async fn() { const { diagnostics, files, ignoredOptions, stats } = await Deno.emit( diff --git a/runtime/js/40_compiler_api.js b/runtime/js/40_compiler_api.js index 011373eb0..bd787ef74 100644 --- a/runtime/js/40_compiler_api.js +++ b/runtime/js/40_compiler_api.js @@ -54,7 +54,7 @@ function checkRelative(specifier) { return StringPrototypeMatch( specifier, - /^([\.\/\\]|https?:\/{2}|file:\/{2})/, + /^([\.\/\\]|https?:\/{2}|file:\/{2}|data:)/, ) ? specifier : `./${specifier}`; |