aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/testdir/test_tabline.vim
diff options
context:
space:
mode:
Diffstat (limited to 'src/nvim/testdir/test_tabline.vim')
-rw-r--r--src/nvim/testdir/test_tabline.vim207
1 files changed, 0 insertions, 207 deletions
diff --git a/src/nvim/testdir/test_tabline.vim b/src/nvim/testdir/test_tabline.vim
deleted file mode 100644
index d9bef09067..0000000000
--- a/src/nvim/testdir/test_tabline.vim
+++ /dev/null
@@ -1,207 +0,0 @@
-" Test for tabline
-
-source shared.vim
-source view_util.vim
-source check.vim
-source screendump.vim
-
-func TablineWithCaughtError()
- let s:func_in_tabline_called = 1
- try
- call eval('unknown expression')
- catch
- endtry
- return ''
-endfunc
-
-func TablineWithError()
- let s:func_in_tabline_called = 1
- call eval('unknown expression')
- return ''
-endfunc
-
-func Test_caught_error_in_tabline()
- if has('gui')
- set guioptions-=e
- endif
- let showtabline_save = &showtabline
- set showtabline=2
- let s:func_in_tabline_called = 0
- let tabline = '%{TablineWithCaughtError()}'
- let &tabline = tabline
- redraw!
- call assert_true(s:func_in_tabline_called)
- call assert_equal(tabline, &tabline)
- set tabline=
- let &showtabline = showtabline_save
-endfunc
-
-func Test_tabline_will_be_disabled_with_error()
- if has('gui')
- set guioptions-=e
- endif
- let showtabline_save = &showtabline
- set showtabline=2
- let s:func_in_tabline_called = 0
- let tabline = '%{TablineWithError()}'
- try
- let &tabline = tabline
- redraw!
- catch
- endtry
- call assert_true(s:func_in_tabline_called)
- call assert_equal('', &tabline)
- set tabline=
- let &showtabline = showtabline_save
-endfunc
-
-func Test_redrawtabline()
- if has('gui')
- set guioptions-=e
- endif
- let showtabline_save = &showtabline
- set showtabline=2
- set tabline=%{bufnr('$')}
- edit Xtabline1
- edit Xtabline2
- redraw
- call assert_match(bufnr('$') . '', Screenline(1))
- au BufAdd * redrawtabline
- badd Xtabline3
- call assert_match(bufnr('$') . '', Screenline(1))
-
- set tabline=
- let &showtabline = showtabline_save
- au! Bufadd
-endfunc
-
-" Test for the "%T" and "%X" flags in the 'tabline' option
-func MyTabLine()
- let s = ''
- for i in range(tabpagenr('$'))
- " set the tab page number (for mouse clicks)
- let s .= '%' . (i + 1) . 'T'
-
- " the label is made by MyTabLabel()
- let s .= ' %{MyTabLabel(' . (i + 1) . ')} '
- endfor
-
- " after the last tab fill with TabLineFill and reset tab page nr
- let s .= '%T'
-
- " right-align the label to close the current tab page
- if tabpagenr('$') > 1
- let s .= '%=%Xclose'
- endif
-
- return s
-endfunc
-
-func MyTabLabel(n)
- let buflist = tabpagebuflist(a:n)
- let winnr = tabpagewinnr(a:n)
- return bufname(buflist[winnr - 1])
-endfunc
-
-func Test_tabline_flags()
- if has('gui')
- set guioptions-=e
- endif
- set tabline=%!MyTabLine()
- edit Xtabline1
- tabnew Xtabline2
- redrawtabline
- call assert_match('^ Xtabline1 Xtabline2\s\+close$', Screenline(1))
- set tabline=
- %bw!
-endfunc
-
-function EmptyTabname()
- return ""
-endfunction
-
-function MakeTabLine() abort
- let titles = map(range(1, tabpagenr('$')), '"%( %" . v:val . "T%{EmptyTabname()}%T %)"')
- let sep = 'あ'
- let tabpages = join(titles, sep)
- return tabpages .. sep .. '%=%999X X'
-endfunction
-
-func Test_tabline_empty_group()
- " this was reading invalid memory
- set tabline=%!MakeTabLine()
- tabnew
- redraw!
-
- tabclose
- set tabline=
-endfunc
-
-" When there are exactly 20 tabline format items (the exact size of the
-" initial tabline items array), test that we don't write beyond the size
-" of the array.
-func Test_tabline_20_format_items_no_overrun()
- set showtabline=2
-
- let tabline = repeat('%#StatColorHi2#', 20)
- let &tabline = tabline
- redrawtabline
-
- set showtabline& tabline&
-endfunc
-
-func Test_mouse_click_in_tab()
- " This used to crash because TabPageIdxs[] was not initialized
- let lines =<< trim END
- tabnew
- set mouse=a
- exe "norm \<LeftMouse>"
- END
- call writefile(lines, 'Xclickscript')
- call RunVim([], [], "-e -s -S Xclickscript -c qa")
-
- call delete('Xclickscript')
-endfunc
-
-func Test_tabline_showcmd()
- CheckScreendump
-
- let lines =<< trim END
- func MyTabLine()
- return '%S'
- endfunc
-
- set showtabline=2
- set tabline=%!MyTabLine()
- set showcmdloc=tabline
- call setline(1, ['a', 'b', 'c'])
- set foldopen+=jump
- 1,2fold
- 3
- END
- call writefile(lines, 'XTest_tabline', 'D')
-
- let buf = RunVimInTerminal('-S XTest_tabline', {'rows': 6})
-
- call term_sendkeys(buf, "g")
- call VerifyScreenDump(buf, 'Test_tabline_showcmd_1', {})
-
- " typing "gg" should open the fold
- call term_sendkeys(buf, "g")
- call VerifyScreenDump(buf, 'Test_tabline_showcmd_2', {})
-
- call term_sendkeys(buf, "\<C-V>Gl")
- call VerifyScreenDump(buf, 'Test_tabline_showcmd_3', {})
-
- call term_sendkeys(buf, "\<Esc>1234")
- call VerifyScreenDump(buf, 'Test_tabline_showcmd_4', {})
-
- call term_sendkeys(buf, "\<Esc>:set tabline=\<CR>")
- call term_sendkeys(buf, ":\<CR>")
- call term_sendkeys(buf, "1234")
- call VerifyScreenDump(buf, 'Test_tabline_showcmd_5', {})
-
- call StopVimInTerminal(buf)
-endfunc
-
-" vim: shiftwidth=2 sts=2 expandtab