X-Git-Url: https://git.madduck.net/etc/vim.git/blobdiff_plain/3eb82a968fa932ab85d84544e958ecee22640468..7bfbcf41b6c2578fff0b14bf23c65d139bb81094:/test/python-folding.vader diff --git a/test/python-folding.vader b/test/python-folding.vader index 851f045..91fc9e2 100644 --- a/test/python-folding.vader +++ b/test/python-folding.vader @@ -29,18 +29,57 @@ Execute (fold level # in code block): AssertEqual foldlevel(12), 1, 'foobar' Execute (fold text of chapters): - AssertEqual foldtextresult(3), '## Chapter 1 ' . repeat('-', winwidth(0) - 18) . ' 6' - AssertEqual foldtextresult(10), '## Chapter 2 ' . repeat('-', winwidth(0) - 18) . ' 2' + let b:width = winwidth(0) + let b:hyphen = repeat('-', b:width - 18 > 2 ? b:width - 18 : b:width - 9 > 0 ? 3 : 2) + AssertEqual foldtextresult(3), strpart('## Chapter 1', 0, b:width - 9) . ' ' . b:hyphen . ' 6' + AssertEqual foldtextresult(10), strpart('## Chapter 2', 0, b:width - 9) . ' ' . b:hyphen . ' 2' Given markdown; Fold text 1 -==+ Fold Level 1 +=========== Fold text 2 ---+ Fold Level 2 +----------- -Execute (fold level ==+, --+): - AssertEqual foldlevel(2), 0, '==+' - AssertEqual foldlevel(4), 1, '--+' +Execute (fold level ==, --): + AssertEqual foldlevel(2), 0, '==' + AssertEqual foldlevel(4), 1, '--' -Execute (fold text of ==+, --+): - AssertEqual foldtextresult(3), 'Fold text 2 ' . repeat('-', winwidth(0) - 17) . ' 1' +Execute (fold text of ==, --): + let b:width = winwidth(0) + let b:hyphen = repeat('-', b:width - 17 > 2 ? b:width - 17 : b:width - 9 > 0 ? 3 : 2) + AssertEqual foldtextresult(3), strpart('Fold text 2', 0, b:width - 9) . ' ' . b:hyphen . ' 1' + +Given markdown; +Headline + +foobar + +# Title + +Execute (fold any preamble): + AssertEqual foldlevel(1), 1, 'Headline' + AssertEqual foldlevel(3), 1, 'foobar' + AssertEqual foldlevel(5), 0, '# Title' + +Given markdown; +--- +layout: article +title: A test of the heading folding when there is YAML frontmatter +tags: markdown yaml vim-markdown +--- +body + +heading +------- + +Execute (fold level of yaml front matter): + let g:vim_markdown_frontmatter = 1 + source ../after/ftplugin/markdown.vim + AssertEqual foldlevel(1), 1, '---' + AssertEqual foldlevel(2), 1, 'layout: article' + AssertEqual foldlevel(4), 1, 'tags: markdown yaml vim-markdown' + AssertEqual foldlevel(5), 1, '---' + AssertEqual foldlevel(6), 1, 'body' + AssertEqual foldlevel(8), 1, 'heading' + AssertEqual foldlevel(9), 1, '-------' + unlet g:vim_markdown_frontmatter