Browse Source

LibJS: Add test for semicolon insertion (#1828)

Stephan Unverwerth 5 years ago
parent
commit
63e1ea7819
1 changed files with 32 additions and 0 deletions
  1. 32 0
      Libraries/LibJS/Tests/automatic-semicolon-insertion.js

+ 32 - 0
Libraries/LibJS/Tests/automatic-semicolon-insertion.js

@@ -0,0 +1,32 @@
+load("test-common.js");
+
+/**
+ * This file tests automatic semicolon insertion rules.
+ * If this file produces syntax errors, something is wrong.
+ */
+
+function foo() {
+    for (var i = 0; i < 4; i++) {
+        break // semicolon inserted here
+        continue // semicolon inserted here
+    }
+
+    var j // semicolon inserted here
+
+    do {
+    } while (1 === 2) // semicolon inserted here
+
+    return // semicolon inserted here
+    1;
+var curly/* semicolon inserted here */}
+
+try {
+    assert(foo() === undefined);
+
+    console.log("PASS");
+} catch (e) {
+    console.log("FAIL: " + e);
+}
+
+// This vardecl must appear exactly at the end of the file (no newline or whitespace after it)
+var eof