summaryrefslogtreecommitdiffstats
path: root/js/src/tests/shell/warning.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/tests/shell/warning.js')
-rw-r--r--js/src/tests/shell/warning.js33
1 files changed, 33 insertions, 0 deletions
diff --git a/js/src/tests/shell/warning.js b/js/src/tests/shell/warning.js
new file mode 100644
index 0000000000..3a390b0864
--- /dev/null
+++ b/js/src/tests/shell/warning.js
@@ -0,0 +1,33 @@
+// |reftest| skip-if(!xulRuntime.shell)
+
+var BUGNUMBER = 1170716;
+var summary = 'Add js shell functions to get last warning';
+
+print(BUGNUMBER + ": " + summary);
+
+// Warning with JSEXN_SYNTAXERR.
+
+enableLastWarning();
+eval(`function f() { if (false) { "use asm"; } }`);
+
+warning = getLastWarning();
+assertEq(warning !== null, true);
+assertEq(warning.name, "SyntaxError");
+assertEq(warning.message.includes("Directive Prologue"), true);
+assertEq(warning.lineNumber, 1);
+assertEq(warning.columnNumber, 28);
+
+// Disabled.
+
+disableLastWarning();
+
+eval(`function f() { if (false) { "use asm"; } }`);
+
+enableLastWarning();
+warning = getLastWarning();
+assertEq(warning, null);
+
+disableLastWarning();
+
+if (typeof reportCompare === "function")
+ reportCompare(true, true);