X-Git-Url: https://git.madduck.net/etc/vim.git/blobdiff_plain/c4282db6cc2c536cc83c8b803b065c4440aecbc2..0d3a44116bc9453fb485865873f9f153018c1862:/test/syntax.vader diff --git a/test/syntax.vader b/test/syntax.vader index 0305120..4ce40ff 100644 --- a/test/syntax.vader +++ b/test/syntax.vader @@ -1,4 +1,4 @@ -Given mkd; +Given markdown; a **b** c Execute (bold): @@ -6,7 +6,15 @@ Execute (bold): AssertEqual SyntaxOf('b'), 'htmlBold' AssertNotEqual SyntaxOf('c'), 'htmlBold' -Given mkd; +Given markdown; +a __b__ c + +Execute (bold): + AssertNotEqual SyntaxOf('a'), 'htmlBold' + AssertEqual SyntaxOf('b'), 'htmlBold' + AssertNotEqual SyntaxOf('c'), 'htmlBold' + +Given markdown; a *b* c Execute (italic): @@ -14,22 +22,67 @@ Execute (italic): AssertEqual SyntaxOf('b'), 'htmlItalic' AssertNotEqual SyntaxOf('c'), 'htmlItalic' +Given markdown; +a _b_ c + +Execute (italic): + AssertNotEqual SyntaxOf('a'), 'htmlItalic' + AssertEqual SyntaxOf('b'), 'htmlItalic' + AssertNotEqual SyntaxOf('c'), 'htmlItalic' + +Given markdown; +a \*b\* c + +Execute (not italic with escaped asterisks): + AssertNotEqual SyntaxOf('a'), 'htmlItalic' + AssertNotEqual SyntaxOf('b'), 'htmlItalic' + AssertNotEqual SyntaxOf('c'), 'htmlItalic' + +Given markdown; +a \_b\_ c + +Execute (not italic with escaped underscores): + AssertNotEqual SyntaxOf('a'), 'htmlItalic' + AssertNotEqual SyntaxOf('b'), 'htmlItalic' + AssertNotEqual SyntaxOf('c'), 'htmlItalic' + +Given markdown; +a _b\_c_ d + +Execute (italic with escaped underscores): + AssertNotEqual SyntaxOf('a'), 'htmlItalic' + AssertEqual SyntaxOf('b'), 'htmlItalic' + AssertEqual SyntaxOf('c'), 'htmlItalic' + AssertNotEqual SyntaxOf('d'), 'htmlItalic' + +Given markdown; +a __b\_\_c__ d + +Execute (bold with escaped underscores): + AssertNotEqual SyntaxOf('a'), 'htmlBold' + AssertEqual SyntaxOf('b'), 'htmlBold' + AssertEqual SyntaxOf('c'), 'htmlBold' + AssertNotEqual SyntaxOf('d'), 'htmlBold' + # Links -Given mkd; +Given markdown; [a](b) Execute (link with title): AssertEqual SyntaxOf('a'), 'mkdLink' AssertEqual SyntaxOf('b'), 'mkdURL' -Given mkd; +Given markdown; (a) +(b) + Execute (parenthesis not in link): - AssertNotEqual SyntaxOf('a'), 'mkdLink' + AssertNotEqual SyntaxOf('a'), 'mkdURL' + AssertNotEqual SyntaxOf('b'), 'mkdURL' -Given mkd; +Given markdown; [a](b) c [d](e) Execute (multiple links on a line): @@ -37,7 +90,7 @@ Execute (multiple links on a line): # Autolinks -Given mkd; +Given markdown; a c Execute (autolink): @@ -47,25 +100,25 @@ Execute (autolink): AssertEqual SyntaxOf('>'), 'mkdDelimiter' AssertNotEqual SyntaxOf('c'), 'mkdInlineURL' -Given mkd; +Given markdown; Execute (autolink with scheme case is insensitive): AssertEqual SyntaxOf('a'), 'mkdInlineURL' -Given mkd; +Given markdown; Execute (autolink without known scheme is not a link): AssertNotEqual SyntaxOf('n'), 'mkdInlineURL' -Given mkd; +Given markdown; Execute (autolink without scheme is not a link): AssertNotEqual SyntaxOf('a'), 'mkdInlineURL' -Given mkd; +Given markdown; < http://a > Execute (autolinks can be backslash escaped): AssertNotEqual SyntaxOf('<'), 'mkdDelimiter' +# Code Blocks + +Given markdown; +~~~ +code +~~~ + +Execute (code blocks can be fenced with tildes): + AssertEqual SyntaxOf('c'), 'mkdCode' + +Given markdown; +~~~ruby +code +~~~ + +Execute (code blocks can have a language specifier): + AssertEqual SyntaxOf('c'), 'mkdCode' + # Math -Given mkd; +Given markdown; a $x$ b c $$y$$ d \$e\$ @@ -110,7 +181,7 @@ Execute (math): AssertNotEqual SyntaxOf('x'), 'mkdMath' AssertNotEqual SyntaxOf('y'), 'mkdMath' -Given mkd; +Given markdown; a $ @@ -128,7 +199,7 @@ Execute (multiline math): # YAML frontmatter -Given mkd; +Given markdown; --- a: b --- @@ -142,7 +213,7 @@ Execute (YAML frontmatter is controlled by the option): syn off | syn on AssertNotEqual SyntaxOf('a'), 'yamlBlockMappingKey' -Given mkd; +Given markdown; --- a: b @@ -153,7 +224,7 @@ Execute (YAML frontmatter only works if it's the first thing in the file): syn off | syn on AssertNotEqual SyntaxOf('a'), 'yamlBlockMappingKey' -Given mkd; +Given markdown; --- a: b --- @@ -164,3 +235,16 @@ Execute (rules are not mistaken by YAML frontmatter delimiters): let g:vim_markdown_frontmatter=1 syn off | syn on AssertEqual SyntaxAt(5, 1), 'mkdRule' + +# Header + +Given markdown; +# #a +ccc + +## #b +ddd + +Execute (header title starts with #): + AssertEqual SyntaxOf('a'), 'htmlH1' + AssertEqual SyntaxOf('b'), 'htmlH2'