diff .cms/lib/codemirror/mode/cypher/test.js @ 0:78edf6b517a0 draft

24.10
author Coffee CMS <info@coffee-cms.ru>
date Fri, 11 Oct 2024 22:40:23 +0000
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/.cms/lib/codemirror/mode/cypher/test.js	Fri Oct 11 22:40:23 2024 +0000
@@ -0,0 +1,37 @@
+// CodeMirror, copyright (c) by Marijn Haverbeke and others
+// Distributed under an MIT license: https://codemirror.net/5/LICENSE
+
+(function() {
+  var mode = CodeMirror.getMode({tabSize: 4, indentUnit: 2}, "cypher");
+  function MT(name) { test.mode(name, mode, Array.prototype.slice.call(arguments, 1)); }
+
+  MT("unbalancedDoubledQuotedString",
+      "[string \"a'b\"][variable c]");
+
+  MT("unbalancedSingleQuotedString",
+      "[string 'a\"b'][variable c]");
+
+  MT("doubleQuotedString",
+      "[string \"a\"][variable b]");
+
+  MT("singleQuotedString",
+      "[string 'a'][variable b]");
+
+  MT("single attribute (with content)",
+      "[node {][atom a:][string 'a'][node }]");
+
+  MT("multiple attribute, singleQuotedString (with content)",
+      "[node {][atom a:][string 'a'][node ,][atom b:][string 'b'][node }]");
+
+  MT("multiple attribute, doubleQuotedString (with content)",
+      "[node {][atom a:][string \"a\"][node ,][atom b:][string \"b\"][node }]");
+
+  MT("single attribute (without content)",
+      "[node {][atom a:][string 'a'][node }]");
+
+  MT("multiple attribute, singleQuotedString (without content)",
+      "[node {][atom a:][string ''][node ,][atom b:][string ''][node }]");
+
+  MT("multiple attribute, doubleQuotedString (without content)",
+      "[node {][atom a:][string \"\"][node ,][atom b:][string \"\"][node }]");
+ })();