]> git.proxmox.com Git - pve-eslint.git/blobdiff - eslint/tests/lib/rules/no-misleading-character-class.js
import 8.41.0 source
[pve-eslint.git] / eslint / tests / lib / rules / no-misleading-character-class.js
index 0aaf34e59422ba5ecac5e54c58d55529a15a6291..5cc5cba5261bfe741cb48fb087a18f48f8623ce6 100644 (file)
@@ -9,7 +9,8 @@
 //------------------------------------------------------------------------------
 
 const rule = require("../../../lib/rules/no-misleading-character-class"),
-    { RuleTester } = require("../../../lib/rule-tester");
+    { RuleTester } = require("../../../lib/rule-tester"),
+    FlatRuleTester = require("../../../lib/rule-tester/flat-rule-tester");
 
 //------------------------------------------------------------------------------
 // Tests
@@ -622,3 +623,33 @@ ruleTester.run("no-misleading-character-class", rule, {
         }
     ]
 });
+
+const flatRuleTester = new FlatRuleTester();
+
+flatRuleTester.run("no-misleading-character-class", rule, {
+    valid: [],
+
+    invalid: [
+        {
+            code: "var r = /[👍]/",
+            languageOptions: {
+                ecmaVersion: 5,
+                sourceType: "script"
+            },
+            errors: [{
+                messageId: "surrogatePairWithoutUFlag",
+                suggestions: null // ecmaVersion doesn't support the 'u' flag
+            }]
+        },
+        {
+            code: "var r = /[👍]/",
+            languageOptions: {
+                ecmaVersion: 2015
+            },
+            errors: [{
+                messageId: "surrogatePairWithoutUFlag",
+                suggestions: [{ messageId: "suggestUnicodeFlag", output: "var r = /[👍]/u" }]
+            }]
+        }
+    ]
+});