1
0
Fork 0
firefox/testing/web-platform/tests/wasm/webapi/esm-integration/script-src-allows-source-phase-wasm.tentative.html
Daniel Baumann 5e9a113729
Adding upstream version 140.0.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
2025-06-25 09:37:52 +02:00

35 lines
1.2 KiB
HTML

<!doctype html>
<title>Source phase imports alowed by CSP</title>
<meta http-equiv="Content-Security-Policy" content="script-src 'self' 'unsafe-inline';">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script type=module>
setup({ single_test: true });
import source exportedNamesSource from "./resources/exported-names.wasm";
assert_true(exportedNamesSource instanceof WebAssembly.Module);
const AbstractModuleSource = Object.getPrototypeOf(WebAssembly.Module);
assert_equals(AbstractModuleSource.name, "AbstractModuleSource");
assert_true(exportedNamesSource instanceof AbstractModuleSource);
assert_array_equals(WebAssembly.Module.exports(exportedNamesSource).map(({ name }) => name).sort(),
["func", "glob", "mem", "tab"]);
const wasmImportFromWasmSource = await import.source("./resources/wasm-import-from-wasm.wasm");
assert_true(wasmImportFromWasmSource instanceof WebAssembly.Module);
let logged = false;
const instance = await WebAssembly.instantiate(wasmImportFromWasmSource, {
"./wasm-export-to-wasm.wasm": {
log () {
logged = true;
}
}
});
instance.exports.logExec();
assert_true(logged);
done();
</script>