Path: blob/master/web-gui/buildyourownbotnet/assets/js/codemirror/mode/gfm/test.js
1293 views
(function() {1var mode = CodeMirror.getMode({tabSize: 4}, "gfm");2function MT(name) { test.mode(name, mode, Array.prototype.slice.call(arguments, 1)); }3var modeHighlightFormatting = CodeMirror.getMode({tabSize: 4}, {name: "gfm", highlightFormatting: true});4function FT(name) { test.mode(name, modeHighlightFormatting, Array.prototype.slice.call(arguments, 1)); }56FT("codeBackticks",7"[comment&formatting&formatting-code `][comment foo][comment&formatting&formatting-code `]");89FT("doubleBackticks",10"[comment&formatting&formatting-code ``][comment foo ` bar][comment&formatting&formatting-code ``]");1112FT("codeBlock",13"[comment&formatting&formatting-code-block ```css]",14"[tag foo]",15"[comment&formatting&formatting-code-block ```]");1617FT("taskList",18"[variable-2&formatting&formatting-list&formatting-list-ul - ][meta&formatting&formatting-task [ ]]][variable-2 foo]",19"[variable-2&formatting&formatting-list&formatting-list-ul - ][property&formatting&formatting-task [x]]][variable-2 foo]");2021MT("emInWordAsterisk",22"foo[em *bar*]hello");2324MT("emInWordUnderscore",25"foo_bar_hello");2627MT("emStrongUnderscore",28"[strong __][em&strong _foo__][em _] bar");2930MT("fencedCodeBlocks",31"[comment ```]",32"[comment foo]",33"",34"[comment ```]",35"bar");3637MT("fencedCodeBlockModeSwitching",38"[comment ```javascript]",39"[variable foo]",40"",41"[comment ```]",42"bar");4344MT("taskListAsterisk",45"[variable-2 * []] foo]", // Invalid; must have space or x between []46"[variable-2 * [ ]]bar]", // Invalid; must have space after ]47"[variable-2 * [x]]hello]", // Invalid; must have space after ]48"[variable-2 * ][meta [ ]]][variable-2 [world]]]", // Valid; tests reference style links49" [variable-3 * ][property [x]]][variable-3 foo]"); // Valid; can be nested5051MT("taskListPlus",52"[variable-2 + []] foo]", // Invalid; must have space or x between []53"[variable-2 + [ ]]bar]", // Invalid; must have space after ]54"[variable-2 + [x]]hello]", // Invalid; must have space after ]55"[variable-2 + ][meta [ ]]][variable-2 [world]]]", // Valid; tests reference style links56" [variable-3 + ][property [x]]][variable-3 foo]"); // Valid; can be nested5758MT("taskListDash",59"[variable-2 - []] foo]", // Invalid; must have space or x between []60"[variable-2 - [ ]]bar]", // Invalid; must have space after ]61"[variable-2 - [x]]hello]", // Invalid; must have space after ]62"[variable-2 - ][meta [ ]]][variable-2 [world]]]", // Valid; tests reference style links63" [variable-3 - ][property [x]]][variable-3 foo]"); // Valid; can be nested6465MT("taskListNumber",66"[variable-2 1. []] foo]", // Invalid; must have space or x between []67"[variable-2 2. [ ]]bar]", // Invalid; must have space after ]68"[variable-2 3. [x]]hello]", // Invalid; must have space after ]69"[variable-2 4. ][meta [ ]]][variable-2 [world]]]", // Valid; tests reference style links70" [variable-3 1. ][property [x]]][variable-3 foo]"); // Valid; can be nested7172MT("SHA",73"foo [link be6a8cc1c1ecfe9489fb51e4869af15a13fc2cd2] bar");7475MT("shortSHA",76"foo [link be6a8cc] bar");7778MT("tooShortSHA",79"foo be6a8c bar");8081MT("longSHA",82"foo be6a8cc1c1ecfe9489fb51e4869af15a13fc2cd22 bar");8384MT("badSHA",85"foo be6a8cc1c1ecfe9489fb51e4869af15a13fc2cg2 bar");8687MT("userSHA",88"foo [link bar@be6a8cc1c1ecfe9489fb51e4869af15a13fc2cd2] hello");8990MT("userProjectSHA",91"foo [link bar/hello@be6a8cc1c1ecfe9489fb51e4869af15a13fc2cd2] world");9293MT("num",94"foo [link #1] bar");9596MT("badNum",97"foo #1bar hello");9899MT("userNum",100"foo [link bar#1] hello");101102MT("userProjectNum",103"foo [link bar/hello#1] world");104105MT("vanillaLink",106"foo [link http://www.example.com/] bar");107108MT("vanillaLinkPunctuation",109"foo [link http://www.example.com/]. bar");110111MT("vanillaLinkExtension",112"foo [link http://www.example.com/index.html] bar");113114MT("notALink",115"[comment ```css]",116"[tag foo] {[property color]:[keyword black];}",117"[comment ```][link http://www.example.com/]");118119MT("notALink",120"[comment ``foo `bar` http://www.example.com/``] hello");121122MT("notALink",123"[comment `foo]",124"[link http://www.example.com/]",125"[comment `foo]",126"",127"[link http://www.example.com/]");128})();129130131