From 12792cd60f76c1a07589b3cbb7f647aac7fd39b7 Mon Sep 17 00:00:00 2001 From: Junegunn Choi Date: Sun, 19 Jan 2014 11:32:52 +0900 Subject: [PATCH] Simplify tests using `Include:` directive --- test/README.md | 4 ++-- test/commandline.vader | 15 ++------------- test/fixed.vader | 6 ++---- test/fixme.vader | 4 ++++ test/include/setup.vader | 32 ++++++++++++++++++++++++++++++++ test/include/teardown.vader | 3 +++ test/interactive.vader | 33 ++------------------------------- test/run | 18 ++++++++++++++++++ test/tex.vader | 9 +++------ 9 files changed, 68 insertions(+), 56 deletions(-) create mode 100644 test/include/setup.vader create mode 100644 test/include/teardown.vader create mode 100755 test/run diff --git a/test/README.md b/test/README.md index 7e2e032..4b549f7 100644 --- a/test/README.md +++ b/test/README.md @@ -7,7 +7,7 @@ Test cases for vim-easy-align ### Run -```vim -:Vader* +``` +./run ``` diff --git a/test/commandline.vader b/test/commandline.vader index 4bb9075..aae733e 100644 --- a/test/commandline.vader +++ b/test/commandline.vader @@ -1,14 +1,4 @@ -Execute (Clean up test environment): - Save g:easy_align_ignore_groups, g:easy_align_ignore_unmatched - Save g:easy_align_indentation, g:easy_align_delimiter_align - Save g:easy_align_interactive_modes, g:easy_align_bang_interactive_modes - Save g:easy_align_delimiters - - let g:easy_align_delimiters = {} - silent! unlet g:easy_align_ignore_groups - silent! unlet g:easy_align_ignore_unmatched - silent! unlet g:easy_align_indentation - silent! unlet g:easy_align_delimiter_align +Include: include/setup.vader Given (fruits): apple;:;;banana::cake @@ -161,5 +151,4 @@ Expect javascript: "user: pass": "r00t: pa55" }; -Execute: - Restore +Include: include/teardown.vader diff --git a/test/fixed.vader b/test/fixed.vader index c89dff9..01145c9 100644 --- a/test/fixed.vader +++ b/test/fixed.vader @@ -1,5 +1,4 @@ -Execute: - Save &tabstop +Include: include/setup.vader Given (Table): |a|b|c|d| @@ -118,5 +117,4 @@ Expect: n2gv = {} n2vt = {} -Execute: - Restore +Include: include/teardown.vader diff --git a/test/fixme.vader b/test/fixme.vader index 54f580f..44b71e6 100644 --- a/test/fixme.vader +++ b/test/fixme.vader @@ -1,3 +1,5 @@ +Include: include/setup.vader + # It is currently possible that EasyAlign command incorrectly judges # that it was executed in block-wise visual mode Given: @@ -18,3 +20,5 @@ Do (TODO Workaround: reset visualmode() on error): Expect: a | b | c +Include: include/teardown.vader + diff --git a/test/include/setup.vader b/test/include/setup.vader new file mode 100644 index 0000000..00610c9 --- /dev/null +++ b/test/include/setup.vader @@ -0,0 +1,32 @@ +Execute (Clean up test environment): + Save g:easy_align_ignore_groups, g:easy_align_ignore_unmatched + Save g:easy_align_indentation, g:easy_align_delimiter_align + Save g:easy_align_interactive_modes, g:easy_align_bang_interactive_modes + Save g:easy_align_delimiters, g:easy_align_bypass_fold + Save &tabstop, mapleader + + unlet! g:easy_align_ignore_groups + unlet! g:easy_align_ignore_unmatched + unlet! g:easy_align_indentation + unlet! g:easy_align_delimiter_align + unlet! g:easy_align_interactive_modes + unlet! g:easy_align_bang_interactive_modes + unlet! g:easy_align_bypass_fold + + let g:easy_align_delimiters = {} + let mapleader = ' ' + vnoremap r :EasyAlign! + vnoremap r :LiveEasyAlign! + + " " Legacy + " vnoremap :EasyAlign + " vnoremap :LiveEasyAlign + " nmap A (EasyAlignOperator) + + set ts=2 + + vmap (EasyAlign) + vmap (LiveEasyAlign) + nmap A (EasyAlign) + vmap . (EasyAlignRepeat) + diff --git a/test/include/teardown.vader b/test/include/teardown.vader new file mode 100644 index 0000000..d5d7930 --- /dev/null +++ b/test/include/teardown.vader @@ -0,0 +1,3 @@ +Execute: + Restore + diff --git a/test/interactive.vader b/test/interactive.vader index fa8fc47..2a8a622 100644 --- a/test/interactive.vader +++ b/test/interactive.vader @@ -1,32 +1,4 @@ -Execute (Clean up test environment): - Save g:easy_align_ignore_groups, g:easy_align_ignore_unmatched - Save g:easy_align_indentation, g:easy_align_delimiter_align - Save g:easy_align_interactive_modes, g:easy_align_bang_interactive_modes - Save g:easy_align_delimiters, &tabstop - Save mapleader - - " TODO: revert after test - silent! unlet g:easy_align_ignore_groups - silent! unlet g:easy_align_ignore_unmatched - silent! unlet g:easy_align_indentation - silent! unlet g:easy_align_delimiter_align - silent! unlet g:easy_align_interactive_modes - silent! unlet g:easy_align_bang_interactive_modes - - let g:easy_align_delimiters = {} - let mapleader = ' ' - vnoremap r :EasyAlign! - vnoremap r :LiveEasyAlign! - - " " Legacy - " vnoremap :EasyAlign - " vnoremap :LiveEasyAlign - " nmap A (EasyAlignOperator) - - vmap (EasyAlign) - vmap (LiveEasyAlign) - nmap A (EasyAlign) - vmap . (EasyAlignRepeat) +Include: include/setup.vader ########################################################### @@ -1619,6 +1591,5 @@ Expect: :: :: f : 6 ########################################################### -Execute: - Restore +Include: include/teardown.vader diff --git a/test/run b/test/run new file mode 100755 index 0000000..111d7e5 --- /dev/null +++ b/test/run @@ -0,0 +1,18 @@ +#!/bin/bash + +VIMRC=$TMPDIR/mini-vimrc +SOURCE=$(dirname $BASH_SOURCE)/.. + +cat > $VIMRC << EOF +set nocompatible +syntax on + +for dep in ['vader.vim', 'vim-repeat'] + execute 'set rtp+=' . finddir(dep, expand('~/.vim').'/**') +endfor +set rtp+=$SOURCE +EOF + +vim -u $VIMRC +Vader* + +rm -f $VIMRC diff --git a/test/tex.vader b/test/tex.vader index 25f6303..6cf8040 100644 --- a/test/tex.vader +++ b/test/tex.vader @@ -1,8 +1,6 @@ # http://en.wikibooks.org/wiki/LaTeX/Tables -Execute: - Save g:easy_align_delimiters, g:easy_align_bypass_fold - let g:easy_align_delimiters = {} - silent! unlet g:easy_align_bypass_fold + +Include: include/setup.vader Given tex (table with escaped &): \begin{tabular}{ l c r } @@ -157,5 +155,4 @@ Expect tex: 8192 & 9.45\e2 & 0.0 & 4.51\e2 & 0.0 & & & & & & \\ \end{tabular} -Execute: - Restore +Include: include/teardown.vader