blob: e89ad19d3459ee93de44629aff10609cf7d0c41f [file] [log] [blame]
" 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