blob: b1cb982a17534378538e6a6ebfa2395e78f9accf [file] [log] [blame]
Bram Moolenaarddf8d1c2016-06-20 11:22:54 +02001runtime ftplugin/man.vim
2
3function Test_g_ft_man_open_mode()
Bram Moolenaarddf8d1c2016-06-20 11:22:54 +02004 vnew
5 let l:h = winheight(1)
6 q
Bram Moolenaar61c04492016-07-23 15:35:35 +02007 let l:w = winwidth(1)
Bram Moolenaarddf8d1c2016-06-20 11:22:54 +02008
9 " split horizontally
10 let wincnt = winnr('$')
Bram Moolenaar61c04492016-07-23 15:35:35 +020011 Man vim
Bram Moolenaarddf8d1c2016-06-20 11:22:54 +020012 if wincnt == winnr('$')
13 " Vim manual page cannot be found.
14 return
15 endif
Bram Moolenaar61c04492016-07-23 15:35:35 +020016
17 call assert_inrange(l:w - 2, l:w + 2, winwidth(1))
Bram Moolenaarddf8d1c2016-06-20 11:22:54 +020018 call assert_true(l:h > winheight(1))
19 call assert_equal(1, tabpagenr('$'))
20 call assert_equal(1, tabpagenr())
21 q
22
23 " split horizontally
24 let g:ft_man_open_mode = "horz"
Bram Moolenaar61c04492016-07-23 15:35:35 +020025 Man vim
26 call assert_inrange(l:w - 2, l:w + 2, winwidth(1))
Bram Moolenaarddf8d1c2016-06-20 11:22:54 +020027 call assert_true(l:h > winheight(1))
28 call assert_equal(1, tabpagenr('$'))
29 call assert_equal(1, tabpagenr())
30 q
31
32 " split vertically
33 let g:ft_man_open_mode = "vert"
Bram Moolenaar61c04492016-07-23 15:35:35 +020034 Man vim
Bram Moolenaarddf8d1c2016-06-20 11:22:54 +020035 call assert_true(l:w > winwidth(1))
36 call assert_equal(l:h, winheight(1))
37 call assert_equal(1, tabpagenr('$'))
38 call assert_equal(1, tabpagenr())
39 q
40
41 " separate tab
42 let g:ft_man_open_mode = "tab"
Bram Moolenaar61c04492016-07-23 15:35:35 +020043 Man vim
44 call assert_inrange(l:w - 2, l:w + 2, winwidth(1))
45 call assert_inrange(l:h - 1, l:h + 1, winheight(1))
Bram Moolenaarddf8d1c2016-06-20 11:22:54 +020046 call assert_equal(2, tabpagenr('$'))
47 call assert_equal(2, tabpagenr())
48 q
Bram Moolenaare5e69502019-07-22 22:09:21 +020049
50 unlet g:ft_man_open_mode
Bram Moolenaarddf8d1c2016-06-20 11:22:54 +020051endfunction
52
53function Test_nomodifiable()
54 let wincnt = winnr('$')
Bram Moolenaar61c04492016-07-23 15:35:35 +020055 Man vim
Bram Moolenaarddf8d1c2016-06-20 11:22:54 +020056 if wincnt == winnr('$')
57 " Vim manual page cannot be found.
58 return
59 endif
60 call assert_false(&l:modifiable)
61 q
62endfunction
Bram Moolenaare5e69502019-07-22 22:09:21 +020063
64function Test_buffer_count_hidden()
65 %bw!
66 set hidden
67
68 call assert_equal(1, len(getbufinfo()))
69
70 let wincnt = winnr('$')
71 Man vim
72 if wincnt == winnr('$')
73 " Vim manual page cannot be found.
74 return
75 endif
76
77 call assert_equal(1, len(getbufinfo({'buflisted':1})))
78 call assert_equal(2, len(getbufinfo()))
79 q
80
81 Man vim
82
83 call assert_equal(1, len(getbufinfo({'buflisted':1})))
84 call assert_equal(2, len(getbufinfo()))
85 q
86
87 set hidden&
88endfunction