patch 9.0.2023: need more tests for :cq
Problem: need more tests for :cq
Solution: Add more tests, including wraparound on linux
Signed-off-by: Christian Brabandt <cb@256bit.org>
diff --git a/src/testdir/test_startup.vim b/src/testdir/test_startup.vim
index 9495533..6780205 100644
--- a/src/testdir/test_startup.vim
+++ b/src/testdir/test_startup.vim
@@ -1351,5 +1351,25 @@
call delete('Xresult')
endfunc
+" Test that -cq works as expected
+func Test_cq_zero_exmode()
+ let logfile = 'Xcq_log.txt'
+ let out = system(GetVimCommand() .. ' --clean --log ' .. logfile .. ' -es -X -c "argdelete foobar" -c"7cq"')
+ call assert_equal(8, v:shell_error)
+ let log = filter(readfile(logfile), {idx, val -> val =~ "E480"})
+ call assert_match('E480: No match: foobar', log[0])
+ call delete(logfile)
+
+ " wrap-around on Unix
+ let out = system(GetVimCommand() .. ' --clean --log ' .. logfile .. ' -es -X -c "argdelete foobar" -c"255cq"')
+ if !has('win32')
+ call assert_equal(0, v:shell_error)
+ else
+ call assert_equal(256, v:shell_error)
+ endif
+ let log = filter(readfile(logfile), {idx, val -> val =~ "E480"})
+ call assert_match('E480: No match: foobar', log[0])
+ call delete('Xcq_log.txt')
+endfunc
" vim: shiftwidth=2 sts=2 expandtab