mirror of
https://github.com/neovim/neovim.git
synced 2024-12-25 21:55:17 -07:00
f17d819330
Problem: Too many delete() calls in tests.
Solution: Use deferred delete where possible.
56564964e6
This includes all changes expect changes in test_startup.vim.
Co-authored-by: Bram Moolenaar <Bram@vim.org>
61 lines
1.5 KiB
VimL
61 lines
1.5 KiB
VimL
" Test the :source! command
|
|
source check.vim
|
|
|
|
func Test_source_utf8()
|
|
" check that sourcing a script with 0x80 as second byte works
|
|
new
|
|
call setline(1, [':%s/àx/--à1234--/g', ':%s/Àx/--À1234--/g'])
|
|
write! Xscript
|
|
bwipe!
|
|
new
|
|
call setline(1, [' àx ', ' Àx '])
|
|
source! Xscript | echo
|
|
call assert_equal(' --à1234-- ', getline(1))
|
|
call assert_equal(' --À1234-- ', getline(2))
|
|
bwipe!
|
|
call delete('Xscript')
|
|
endfunc
|
|
|
|
func Test_source_latin()
|
|
" check that sourcing a latin1 script with a 0xc0 byte works
|
|
new
|
|
call setline(1, ["call feedkeys('r')", "call feedkeys('\xc0', 'xt')"])
|
|
write! Xscript
|
|
bwipe!
|
|
new
|
|
call setline(1, ['xxx'])
|
|
source Xscript
|
|
call assert_equal("\u00c0xx", getline(1))
|
|
bwipe!
|
|
call delete('Xscript')
|
|
endfunc
|
|
|
|
" Test for sourcing a file with CTRL-V's at the end of the line
|
|
func Test_source_ctrl_v()
|
|
call writefile(['map __1 afirst',
|
|
\ 'map __2 asecond',
|
|
\ 'map __3 athird',
|
|
\ 'map __4 afourth',
|
|
\ 'map __5 afifth',
|
|
\ "map __1 asd\<C-V>",
|
|
\ "map __2 asd\<C-V>\<C-V>",
|
|
\ "map __3 asd\<C-V>\<C-V>",
|
|
\ "map __4 asd\<C-V>\<C-V>\<C-V>",
|
|
\ "map __5 asd\<C-V>\<C-V>\<C-V>",
|
|
\ ], 'Xtestfile', 'D')
|
|
source Xtestfile
|
|
enew!
|
|
exe "normal __1\<Esc>\<Esc>__2\<Esc>__3\<Esc>\<Esc>__4\<Esc>__5\<Esc>"
|
|
exe "%s/\<C-J>/0/g"
|
|
call assert_equal(['sd',
|
|
\ "map __2 asd\<Esc>secondsd\<Esc>sd0map __5 asd0fifth"],
|
|
\ getline(1, 2))
|
|
|
|
enew!
|
|
unmap __1
|
|
unmap __2
|
|
unmap __3
|
|
unmap __4
|
|
unmap __5
|
|
endfunc
|