summaryrefslogtreecommitdiffstats
path: root/dom/html/test/file_script_module.html
diff options
context:
space:
mode:
authorMatt A. Tobin <email@mattatobin.com>2019-11-10 15:43:51 -0500
committerMatt A. Tobin <email@mattatobin.com>2019-11-10 15:43:51 -0500
commitb0e23e79e72b7892b826fabea4f9e02c421d2861 (patch)
tree26f20aea660514c213a3ae942eab222e5ccebde3 /dom/html/test/file_script_module.html
parent03590a6711d601ef3ddb48787e9f3f556705b5db (diff)
parentb00601953bade944cd6df9cde6fcdd1f10d76feb (diff)
downloadUXP-b0e23e79e72b7892b826fabea4f9e02c421d2861.tar
UXP-b0e23e79e72b7892b826fabea4f9e02c421d2861.tar.gz
UXP-b0e23e79e72b7892b826fabea4f9e02c421d2861.tar.lz
UXP-b0e23e79e72b7892b826fabea4f9e02c421d2861.tar.xz
UXP-b0e23e79e72b7892b826fabea4f9e02c421d2861.zip
Merge branch 'master' into mailnews-work
Diffstat (limited to 'dom/html/test/file_script_module.html')
-rw-r--r--dom/html/test/file_script_module.html42
1 files changed, 42 insertions, 0 deletions
diff --git a/dom/html/test/file_script_module.html b/dom/html/test/file_script_module.html
new file mode 100644
index 000000000..78c499265
--- /dev/null
+++ b/dom/html/test/file_script_module.html
@@ -0,0 +1,42 @@
+<html>
+<body>
+ <script>
+// Helper methods.
+function ok(a, msg) {
+ parent.postMessage({ check: !!a, msg }, "*")
+}
+
+function is(a, b, msg) {
+ ok(a === b, msg);
+}
+
+function finish() {
+ parent.postMessage({ done: true }, "*");
+}
+ </script>
+
+ <script id="a" nomodule>42</script>
+ <script id="b">42</script>
+ <script>
+// Let's test the behavior of nomodule attribute and noModule getter/setter.
+var a = document.getElementById("a");
+is(a.noModule, true, "HTMLScriptElement with nomodule attribute has noModule set to true");
+a.removeAttribute("nomodule");
+is(a.noModule, false, "HTMLScriptElement without nomodule attribute has noModule set to false");
+a.noModule = true;
+ok(a.hasAttribute('nomodule'), "HTMLScriptElement.noModule = true add the nomodule attribute");
+
+var b = document.getElementById("b");
+is(b.noModule, false, "HTMLScriptElement without nomodule attribute has noModule set to false");
+b.noModule = true;
+ok(b.hasAttribute('nomodule'), "HTMLScriptElement.noModule = true add the nomodule attribute");
+ </script>
+
+ <script>var foo = 42;</script>
+ <script nomodule>foo = 43;</script>
+ <script>
+is(foo, 42, "nomodule HTMLScriptElements should not be executed in modern browsers");
+finish();
+ </script>
+</body>
+</html>