aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/testdir/test_command_count.in
diff options
context:
space:
mode:
authorJustin M. Keyes <justinkz@gmail.com>2015-04-29 02:11:30 -0400
committerJustin M. Keyes <justinkz@gmail.com>2015-04-29 02:11:30 -0400
commit45b617afada9304cb265aad02645b22d76dfc2d5 (patch)
tree7f28a768d2c88e646f1bc4e1b9e5b1ea604cce21 /src/nvim/testdir/test_command_count.in
parent6a8862ded4d6f1693ac591ac8e47d1acbd044c49 (diff)
parentb46746b93ef298688cba3d8fbbcdae13e069935c (diff)
downloadrneovim-45b617afada9304cb265aad02645b22d76dfc2d5.tar.gz
rneovim-45b617afada9304cb265aad02645b22d76dfc2d5.tar.bz2
rneovim-45b617afada9304cb265aad02645b22d76dfc2d5.zip
Merge pull request #2041 from fmoralesc/command-ranges
Command ranges (was PR #1793)
Diffstat (limited to 'src/nvim/testdir/test_command_count.in')
-rw-r--r--src/nvim/testdir/test_command_count.in157
1 files changed, 157 insertions, 0 deletions
diff --git a/src/nvim/testdir/test_command_count.in b/src/nvim/testdir/test_command_count.in
new file mode 100644
index 0000000000..dd3c108360
--- /dev/null
+++ b/src/nvim/testdir/test_command_count.in
@@ -0,0 +1,157 @@
+Test for user command counts vim: set ft=vim :
+
+STARTTEST
+:so tiny.vim
+:lang C
+:let g:lines = []
+:com -range=% RangeLines :call add(g:lines, 'RangeLines '.<line1>.' '.<line2>)
+:com -range -addr=arguments RangeArguments :call add(g:lines, 'RangeArguments '.<line1>.' '.<line2>)
+:com -range=% -addr=arguments RangeArgumentsAll :call add(g:lines, 'RangeArgumentsAll '.<line1>.' '.<line2>)
+:com -range -addr=loaded_buffers RangeLoadedBuffers :call add(g:lines, 'RangeLoadedBuffers '.<line1>.' '.<line2>)
+:com -range=% -addr=loaded_buffers RangeLoadedBuffersAll :call add(g:lines, 'RangeLoadedBuffersAll '.<line1>.' '.<line2>)
+:com -range -addr=buffers RangeBuffers :call add(g:lines, 'RangeBuffers '.<line1>.' '.<line2>)
+:com -range=% -addr=buffers RangeBuffersAll :call add(g:lines, 'RangeBuffersAll '.<line1>.' '.<line2>)
+:com -range -addr=windows RangeWindows :call add(g:lines, 'RangeWindows '.<line1>.' '.<line2>)
+:com -range=% -addr=windows RangeWindowsAll :call add(g:lines, 'RangeWindowsAll '.<line1>.' '.<line2>)
+:com -range -addr=tabs RangeTabs :call add(g:lines, 'RangeTabs '.<line1>.' '.<line2>)
+:com -range=% -addr=tabs RangeTabsAll :call add(g:lines, 'RangeTabsAll '.<line1>.' '.<line2>)
+:set hidden
+:arga a b c d
+:argdo echo "loading buffers"
+:argu 3
+:.-,$-RangeArguments
+:%RangeArguments
+:RangeArgumentsAll
+:N
+:.RangeArguments
+:split|split|split|split
+:3wincmd w
+:.,$RangeWindows
+:%RangeWindows
+:RangeWindowsAll
+:only
+:blast|bd
+:.,$RangeLoadedBuffers
+:%RangeLoadedBuffers
+:RangeLoadedBuffersAll
+:.,$RangeBuffers
+:%RangeBuffers
+:RangeBuffersAll
+:tabe|tabe|tabe|tabe
+:normal 2gt
+:.,$RangeTabs
+:%RangeTabs
+:RangeTabsAll
+:1tabonly
+:s/\n/\r\r\r\r\r/
+:2ma<
+:$-ma>
+:'<,'>RangeLines
+:com -range=% -buffer LocalRangeLines :call add(g:lines, 'LocalRangeLines '.<line1>.' '.<line2>)
+:'<,'>LocalRangeLines
+:b1
+ENDTEST
+
+STARTTEST
+:call add(g:lines, '')
+:%argd
+:arga a b c d
+:let v:errmsg = ''
+:5argu
+:call add(g:lines, '5argu ' . v:errmsg)
+:$argu
+:call add(g:lines, '4argu ' . expand('%:t'))
+:let v:errmsg = ''
+:1argu
+:call add(g:lines, '1argu ' . expand('%:t'))
+:let v:errmsg = ''
+:100b
+:call add(g:lines, '100b ' . v:errmsg)
+:split|split|split|split
+:let v:errmsg = ''
+:0close
+:call add(g:lines, '0close ' . v:errmsg)
+:$wincmd w
+:$close
+:call add(g:lines, '$close ' . winnr())
+:let v:errmsg = ''
+:$+close
+:call add(g:lines, '$+close ' . v:errmsg)
+:$tabe
+:call add(g:lines, '$tabe ' . tabpagenr())
+:let v:errmsg = ''
+:$+tabe
+:call add(g:lines, '$+tabe ' . v:errmsg)
+:only!
+:e x
+:0tabm
+:normal 1gt
+:call add(g:lines, '0tabm ' . expand('%:t'))
+:tabonly!
+:only!
+:e! test.out
+:call append(0, g:lines)
+:unlet g:lines
+:w|bd
+:b1
+ENDTEST
+
+STARTTEST
+:let g:lines = []
+:func BufStatus()
+: call add(g:lines, 'aaa: ' . buflisted(g:buf_aaa) . ' bbb: ' . buflisted(g:buf_bbb) . ' ccc: ' . buflisted(g:buf_ccc))
+:endfunc
+:se nohidden
+:e aaa
+:let buf_aaa = bufnr('%')
+:e bbb
+:let buf_bbb = bufnr('%')
+:e ccc
+:let buf_ccc = bufnr('%')
+:b1
+:call BufStatus()
+:exe buf_bbb . "," . buf_ccc . "bdelete"
+:call BufStatus()
+:exe buf_aaa . "bdelete"
+:call BufStatus()
+:e! test.out
+:call append('$', g:lines)
+:unlet g:lines
+:delfunc BufStatus
+:w|bd
+:b1
+ENDTEST
+
+STARTTEST
+:se hidden
+:only!
+:let g:lines = []
+:%argd
+:arga a b c d e f
+:3argu
+:let args = ''
+:.,$-argdo let args .= ' '.expand('%')
+:call add(g:lines, 'argdo:' . args)
+:split|split|split|split
+:2wincmd w
+:let windows = ''
+:.,$-windo let windows .= ' '.winnr()
+:call add(g:lines, 'windo:'. windows)
+:b2
+:let buffers = ''
+:.,$-bufdo let buffers .= ' '.bufnr('%')
+:call add(g:lines, 'bufdo:' . buffers)
+:let buffers = ''
+:3,7bufdo let buffers .= ' '.bufnr('%')
+:call add(g:lines, 'bufdo:' . buffers)
+:tabe|tabe|tabe|tabe
+:normal! 2gt
+:let tabpages = ''
+:.,$-tabdo let tabpages .= ' '.tabpagenr()
+:call add(g:lines, 'tabdo:' . tabpages)
+:e! test.out
+:call append('$', g:lines)
+:w|qa!
+ENDTEST
+
+