summaryrefslogtreecommitdiffstats
path: root/devtools/client/shared/test/xpcshell/test_advanceValidate.js
diff options
context:
space:
mode:
Diffstat (limited to 'devtools/client/shared/test/xpcshell/test_advanceValidate.js')
-rw-r--r--devtools/client/shared/test/xpcshell/test_advanceValidate.js33
1 files changed, 33 insertions, 0 deletions
diff --git a/devtools/client/shared/test/xpcshell/test_advanceValidate.js b/devtools/client/shared/test/xpcshell/test_advanceValidate.js
new file mode 100644
index 0000000000..47ad4b92c7
--- /dev/null
+++ b/devtools/client/shared/test/xpcshell/test_advanceValidate.js
@@ -0,0 +1,33 @@
+/* Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/ */
+
+"use strict";
+
+// Tests the advanceValidate function from rule-view.js.
+
+const {
+ advanceValidate,
+} = require("resource://devtools/client/inspector/shared/utils.js");
+const { KeyCodes } = require("resource://devtools/client/shared/keycodes.js");
+
+// 1 2 3
+// 0123456789012345678901234567890
+const sampleInput = '\\symbol "string" url(somewhere)';
+
+function testInsertion(where, result, testName) {
+ info(testName);
+ equal(
+ advanceValidate(KeyCodes.DOM_VK_SEMICOLON, sampleInput, where),
+ result,
+ "testing advanceValidate at " + where
+ );
+}
+
+function run_test() {
+ testInsertion(4, true, "inside a symbol");
+ testInsertion(1, false, "after a backslash");
+ testInsertion(8, true, "after whitespace");
+ testInsertion(11, false, "inside a string");
+ testInsertion(24, false, "inside a URL");
+ testInsertion(31, true, "at the end");
+}