diff options
Diffstat (limited to 'dom/base/test/jsmodules/test_syntaxErrorInlineAsync.html')
-rw-r--r-- | dom/base/test/jsmodules/test_syntaxErrorInlineAsync.html | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/dom/base/test/jsmodules/test_syntaxErrorInlineAsync.html b/dom/base/test/jsmodules/test_syntaxErrorInlineAsync.html new file mode 100644 index 0000000000..39b8a7354d --- /dev/null +++ b/dom/base/test/jsmodules/test_syntaxErrorInlineAsync.html @@ -0,0 +1,34 @@ +<!DOCTYPE html> +<meta charset=utf-8> +<title>Test syntax errors parsing an inline 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" async onerror="eventCount++"> +// Module with a syntax error. +some invalid js syntax; +wasRun = true; +</script> +<body onload='testError()'></body> |