diff options
Diffstat (limited to '')
-rw-r--r-- | dom/base/test/jsmodules/test_syntaxErrorAsync.html | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/dom/base/test/jsmodules/test_syntaxErrorAsync.html b/dom/base/test/jsmodules/test_syntaxErrorAsync.html new file mode 100644 index 0000000000..64d8e6a21c --- /dev/null +++ b/dom/base/test/jsmodules/test_syntaxErrorAsync.html @@ -0,0 +1,30 @@ +<!DOCTYPE html> +<meta charset=utf-8> +<title>Test syntax errors parsing an async module are reported</title> +<script src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"></script> +<script> + var wasRun = false; + var errorCount = 0; + var syntaxErrorCount = 0; + var eventCount = 0; + + SimpleTest.waitForExplicitFinish(); + window.onerror = handleError; + + function handleError(message, url, line, column, error) { + errorCount++; + if (error instanceof SyntaxError) { + syntaxErrorCount++; + } + } + + function testError() { + ok(!wasRun, 'Check script was not run'); + ok(errorCount == 1, 'Check that an error was reported'); + ok(syntaxErrorCount == 1, 'Check that a syntax error was reported'); + ok(eventCount == 0, 'Check that no error event was fired'); + SimpleTest.finish(); + } +</script> +<script type="module" src="module_badSyntax.js" async onerror="eventCount++"></script> +<body onload='testError()'></body> |