From d536fa1117c119f6cbafce19b39241af6dabf8a5 Mon Sep 17 00:00:00 2001 From: Rane Brown Date: Sun, 14 Jul 2019 21:50:22 -0600 Subject: [PATCH] Basic tests for creating links --- test/link_creation.vader | 72 +++++++++++++++++++++++++++++++++++++++ test/vader_setup.vader | 26 ++++++++++++++ test/vader_teardown.vader | 3 ++ 3 files changed, 101 insertions(+) create mode 100644 test/link_creation.vader create mode 100644 test/vader_setup.vader create mode 100644 test/vader_teardown.vader diff --git a/test/link_creation.vader b/test/link_creation.vader new file mode 100644 index 0000000..0ebb035 --- /dev/null +++ b/test/link_creation.vader @@ -0,0 +1,72 @@ +Include: vader_setup.vader + +Given vimwiki (Text that is not a wikilink): + test + www.google.com + https://www.google.com + multiple words + +Execute (Set syntax to default): + call SetSyntax('default') + +Do (Create links default syntax): + \ + j + v$ + \ + j + v$ + \ + j + v$ + \ + +Expect (Vimwiki links): + [[test]] + [[www.google.com]] + [[https://www.google.com]] + [[multiple words]] + +Execute (Set syntax to markdown): + call SetSyntax('markdown') + +Do (Create links markdown syntax): + \ + j + v$ + \ + j + v$ + \ + j + v$ + \ + +Expect (Markdown links): + [test](test) + [www.google.com](www.google.com) + [https://www.google.com](https://www.google.com) + [multiple words](multiple words) + +Execute (Set syntax to mediawiki): + call SetSyntax('mediawiki') + +Do (Create links mediawiki syntax): + \ + j + v$ + \ + j + v$ + \ + j + v$ + \ + +Expect (Mediawiki links): + [[test]] + [[www.google.com]] + [[https://www.google.com]] + [[multiple words]] + +Include: vader_teardown.vader diff --git a/test/vader_setup.vader b/test/vader_setup.vader new file mode 100644 index 0000000..8bf22a9 --- /dev/null +++ b/test/vader_setup.vader @@ -0,0 +1,26 @@ +Execute (Setup): + " assumes 3 registered wikis in vimrc + let g:wiki_nr = 3 + +Before (Define functions): + " change the syntax using a temporary wiki + function! SetSyntax(vw_syn) + if a:vw_syn ==# 'default' + let ext = 'wiki' + elseif a:vw_syn ==# 'markdown' + let ext = 'md' + elseif a:vw_syn ==# 'mediawiki' + let ext = 'mw' + else + Log 'Inavlid syntax ' . a:vw_syn . ' in SetSyntax()' + return + endif + let path = expand('%:p:h') + let new_temp_wiki_settings = {'path': path, + \ 'ext': ext, + \ 'syntax': a:vw_syn, + \ } + call vimwiki#vars#add_temporary_wiki(new_temp_wiki_settings) + call vimwiki#vars#set_bufferlocal('wiki_nr', g:wiki_nr) + let g:wiki_nr += 1 + endfunction diff --git a/test/vader_teardown.vader b/test/vader_teardown.vader new file mode 100644 index 0000000..556f647 --- /dev/null +++ b/test/vader_teardown.vader @@ -0,0 +1,3 @@ +Execute (Cleanup): + delfunction SetSyntax + unlet g:wiki_nr