diff options
Diffstat (limited to 'src/testdir/test_smartindent.vim')
-rw-r--r-- | src/testdir/test_smartindent.vim | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/src/testdir/test_smartindent.vim b/src/testdir/test_smartindent.vim new file mode 100644 index 0000000..e89ad19 --- /dev/null +++ b/src/testdir/test_smartindent.vim @@ -0,0 +1,41 @@ +" Tests for smartindent + +" Tests for not doing smart indenting when it isn't set. +func Test_nosmartindent() + new + call append(0, [" some test text", + \ " test text", + \ "test text", + \ " test text"]) + set nocindent nosmartindent autoindent + exe "normal! gg/some\<CR>" + exe "normal! 2cc#test\<Esc>" + call assert_equal(" #test", getline(1)) + enew! | close +endfunc + +func MyIndent() +endfunc + +" When 'indentexpr' is set, setting 'si' has no effect. +func Test_smartindent_has_no_effect() + new + exe "normal! i\<Tab>one\<Esc>" + set noautoindent + set smartindent + set indentexpr= + exe "normal! Gotwo\<Esc>" + call assert_equal("\ttwo", getline("$")) + + set indentexpr=MyIndent + exe "normal! Gothree\<Esc>" + call assert_equal("three", getline("$")) + + delfunction! MyIndent + set autoindent& + set smartindent& + set indentexpr& + bwipe! +endfunc + +" vim: shiftwidth=2 sts=2 expandtab |