Mercurial > vim
annotate src/testdir/test_window_cmd.vim @ 30665:fe0a18141c3c v9.0.0667
patch 9.0.0667: ml_get error when 'splitkeep' is "screen"
Commit: https://github.com/vim/vim/commit/346823d3e5668b99d2c2fd920e7f215e21ad3ea7
Author: Luuk van Baal <luukvbaal@gmail.com>
Date: Wed Oct 5 18:26:42 2022 +0100
patch 9.0.0667: ml_get error when 'splitkeep' is "screen"
Problem: ml_get error when 'splitkeep' is "screen". (Marius Gedminas)
Solution: Check the botline is not too large. (Luuk van Baal,
closes #11293, closes #11292)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Wed, 05 Oct 2022 19:30:02 +0200 |
parents | ac908e454519 |
children | bff3fa5f4c74 |
rev | line source |
---|---|
9102
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
1 " Tests for window cmd (:wincmd, :split, :vsplit, :resize and etc...) |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
2 |
21765
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
21265
diff
changeset
|
3 source check.vim |
30439
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
4 source screendump.vim |
18253
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
5 |
9102
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
6 func Test_window_cmd_ls0_with_split() |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
7 set ls=0 |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
8 set splitbelow |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
9 split |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
10 quit |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
11 call assert_equal(0, &lines - &cmdheight - winheight(0)) |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
12 new | only! |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
13 " |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
14 set splitbelow&vim |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
15 botright split |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
16 quit |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
17 call assert_equal(0, &lines - &cmdheight - winheight(0)) |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
18 new | only! |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
19 set ls&vim |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
20 endfunc |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
21 |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
22 func Test_window_cmd_cmdwin_with_vsp() |
13880
60e80884994d
patch 8.0.1811: no test for winrestcmd()
Christian Brabandt <cb@256bit.org>
parents:
13666
diff
changeset
|
23 let efmt = 'Expected 0 but got %d (in ls=%d, %s window)' |
9102
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
24 for v in range(0, 2) |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
25 exec "set ls=" . v |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
26 vsplit |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
27 call feedkeys("q:\<CR>") |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
28 let ac = &lines - (&cmdheight + winheight(0) + !!v) |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
29 let emsg = printf(efmt, ac, v, 'left') |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
30 call assert_equal(0, ac, emsg) |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
31 wincmd w |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
32 let ac = &lines - (&cmdheight + winheight(0) + !!v) |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
33 let emsg = printf(efmt, ac, v, 'right') |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
34 call assert_equal(0, ac, emsg) |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
35 new | only! |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
36 endfor |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
37 set ls&vim |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
38 endfunc |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
39 |
29694
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
40 func Test_cmdheight_not_changed() |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
41 set cmdheight=2 |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
42 set winminheight=0 |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
43 augroup Maximize |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
44 autocmd WinEnter * wincmd _ |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
45 augroup END |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
46 split |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
47 tabnew |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
48 tabfirst |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
49 call assert_equal(2, &cmdheight) |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
50 |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
51 tabonly! |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
52 only |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
53 set winminwidth& cmdheight& |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
54 augroup Maximize |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
55 au! |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
56 augroup END |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
57 augroup! Maximize |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
58 endfunc |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
59 |
21020
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
60 " Test for jumping to windows |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
61 func Test_window_jump() |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
62 new |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
63 " jumping to a window with a count greater than the max windows |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
64 exe "normal 4\<C-W>w" |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
65 call assert_equal(2, winnr()) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
66 only |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
67 endfunc |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
68 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
69 func Test_window_cmd_wincmd_gf() |
9349
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
70 let fname = 'test_gf.txt' |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
71 let swp_fname = '.' . fname . '.swp' |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
72 call writefile([], fname) |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
73 call writefile([], swp_fname) |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
74 function s:swap_exists() |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
75 let v:swapchoice = s:swap_choice |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
76 endfunc |
17360
cb71b5e9e5d9
patch 8.1.1679: test using SwapExists autocommand file may fail
Bram Moolenaar <Bram@vim.org>
parents:
16690
diff
changeset
|
77 " Remove the catch-all that runtest.vim adds |
cb71b5e9e5d9
patch 8.1.1679: test using SwapExists autocommand file may fail
Bram Moolenaar <Bram@vim.org>
parents:
16690
diff
changeset
|
78 au! SwapExists |
9349
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
79 augroup test_window_cmd_wincmd_gf |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
80 autocmd! |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
81 exec "autocmd SwapExists " . fname . " call s:swap_exists()" |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
82 augroup END |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
83 |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
84 call setline(1, fname) |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
85 " (E)dit anyway |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
86 let s:swap_choice = 'e' |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
87 wincmd gf |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
88 call assert_equal(2, tabpagenr()) |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
89 call assert_equal(fname, bufname("%")) |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
90 quit! |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
91 |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
92 " (Q)uit |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
93 let s:swap_choice = 'q' |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
94 wincmd gf |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
95 call assert_equal(1, tabpagenr()) |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
96 call assert_notequal(fname, bufname("%")) |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
97 new | only! |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
98 |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
99 call delete(fname) |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
100 call delete(swp_fname) |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
101 augroup! test_window_cmd_wincmd_gf |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
102 endfunc |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
103 |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
104 func Test_window_quit() |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
105 e Xa |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
106 split Xb |
18035
11dca9732a48
patch 8.1.2013: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
107 call assert_equal(2, '$'->winnr()) |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
108 call assert_equal('Xb', bufname(winbufnr(1))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
109 call assert_equal('Xa', bufname(winbufnr(2))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
110 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
111 wincmd q |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
112 call assert_equal(1, winnr('$')) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
113 call assert_equal('Xa', bufname(winbufnr(1))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
114 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
115 bw Xa Xb |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
116 endfunc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
117 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
118 func Test_window_horizontal_split() |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
119 call assert_equal(1, winnr('$')) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
120 3wincmd s |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
121 call assert_equal(2, winnr('$')) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
122 call assert_equal(3, winheight(0)) |
18035
11dca9732a48
patch 8.1.2013: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
123 call assert_equal(winwidth(1), 2->winwidth()) |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
124 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
125 call assert_fails('botright topleft wincmd s', 'E442:') |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
126 bw |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
127 endfunc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
128 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
129 func Test_window_vertical_split() |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
130 call assert_equal(1, winnr('$')) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
131 3wincmd v |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
132 call assert_equal(2, winnr('$')) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
133 call assert_equal(3, winwidth(0)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
134 call assert_equal(winheight(1), winheight(2)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
135 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
136 call assert_fails('botright topleft wincmd v', 'E442:') |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
137 bw |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
138 endfunc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
139 |
15006
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
140 " Test the ":wincmd ^" and "<C-W>^" commands. |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
141 func Test_window_split_edit_alternate() |
15006
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
142 |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
143 " Test for failure when the alternate buffer/file no longer exists. |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
144 edit Xfoo | %bw |
22087
ff21e2962490
patch 8.2.1593: tests do not check the error number properly
Bram Moolenaar <Bram@vim.org>
parents:
22073
diff
changeset
|
145 call assert_fails(':wincmd ^', 'E23:') |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
146 |
15006
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
147 " Test for the expected behavior when we have two named buffers. |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
148 edit Xfoo | edit Xbar |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
149 wincmd ^ |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
150 call assert_equal('Xfoo', bufname(winbufnr(1))) |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
151 call assert_equal('Xbar', bufname(winbufnr(2))) |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
152 only |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
153 |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
154 " Test for the expected behavior when the alternate buffer is not named. |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
155 enew | let l:nr1 = bufnr('%') |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
156 edit Xfoo | let l:nr2 = bufnr('%') |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
157 wincmd ^ |
15006
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
158 call assert_equal(l:nr1, winbufnr(1)) |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
159 call assert_equal(l:nr2, winbufnr(2)) |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
160 only |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
161 |
15012
55663ef68467
patch 8.1.0517: Test_window_split_edit_alternate() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15006
diff
changeset
|
162 " FIXME: this currently fails on AppVeyor, but passes locally |
55663ef68467
patch 8.1.0517: Test_window_split_edit_alternate() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15006
diff
changeset
|
163 if !has('win32') |
55663ef68467
patch 8.1.0517: Test_window_split_edit_alternate() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15006
diff
changeset
|
164 " Test the Normal mode command. |
55663ef68467
patch 8.1.0517: Test_window_split_edit_alternate() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15006
diff
changeset
|
165 call feedkeys("\<C-W>\<C-^>", 'tx') |
55663ef68467
patch 8.1.0517: Test_window_split_edit_alternate() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15006
diff
changeset
|
166 call assert_equal(l:nr2, winbufnr(1)) |
55663ef68467
patch 8.1.0517: Test_window_split_edit_alternate() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15006
diff
changeset
|
167 call assert_equal(l:nr1, winbufnr(2)) |
55663ef68467
patch 8.1.0517: Test_window_split_edit_alternate() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15006
diff
changeset
|
168 endif |
15006
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
169 |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
170 %bw! |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
171 endfunc |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
172 |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
173 " Test the ":[count]wincmd ^" and "[count]<C-W>^" commands. |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
174 func Test_window_split_edit_bufnr() |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
175 |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
176 %bwipeout |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
177 let l:nr = bufnr('%') + 1 |
22087
ff21e2962490
patch 8.2.1593: tests do not check the error number properly
Bram Moolenaar <Bram@vim.org>
parents:
22073
diff
changeset
|
178 call assert_fails(':execute "normal! ' . l:nr . '\<C-W>\<C-^>"', 'E92:') |
ff21e2962490
patch 8.2.1593: tests do not check the error number properly
Bram Moolenaar <Bram@vim.org>
parents:
22073
diff
changeset
|
179 call assert_fails(':' . l:nr . 'wincmd ^', 'E16:') |
ff21e2962490
patch 8.2.1593: tests do not check the error number properly
Bram Moolenaar <Bram@vim.org>
parents:
22073
diff
changeset
|
180 call assert_fails(':0wincmd ^', 'E16:') |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
181 |
15006
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
182 edit Xfoo | edit Xbar | edit Xbaz |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
183 let l:foo_nr = bufnr('Xfoo') |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
184 let l:bar_nr = bufnr('Xbar') |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
185 let l:baz_nr = bufnr('Xbaz') |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
186 |
15014
cc4c41448d77
patch 8.1.0518: Test_window_split_edit_bufnr() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15012
diff
changeset
|
187 " FIXME: this currently fails on AppVeyor, but passes locally |
cc4c41448d77
patch 8.1.0518: Test_window_split_edit_bufnr() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15012
diff
changeset
|
188 if !has('win32') |
cc4c41448d77
patch 8.1.0518: Test_window_split_edit_bufnr() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15012
diff
changeset
|
189 call feedkeys(l:foo_nr . "\<C-W>\<C-^>", 'tx') |
cc4c41448d77
patch 8.1.0518: Test_window_split_edit_bufnr() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15012
diff
changeset
|
190 call assert_equal('Xfoo', bufname(winbufnr(1))) |
cc4c41448d77
patch 8.1.0518: Test_window_split_edit_bufnr() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15012
diff
changeset
|
191 call assert_equal('Xbaz', bufname(winbufnr(2))) |
cc4c41448d77
patch 8.1.0518: Test_window_split_edit_bufnr() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15012
diff
changeset
|
192 only |
15006
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
193 |
15014
cc4c41448d77
patch 8.1.0518: Test_window_split_edit_bufnr() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15012
diff
changeset
|
194 call feedkeys(l:bar_nr . "\<C-W>\<C-^>", 'tx') |
cc4c41448d77
patch 8.1.0518: Test_window_split_edit_bufnr() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15012
diff
changeset
|
195 call assert_equal('Xbar', bufname(winbufnr(1))) |
cc4c41448d77
patch 8.1.0518: Test_window_split_edit_bufnr() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15012
diff
changeset
|
196 call assert_equal('Xfoo', bufname(winbufnr(2))) |
cc4c41448d77
patch 8.1.0518: Test_window_split_edit_bufnr() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15012
diff
changeset
|
197 only |
15006
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
198 |
15014
cc4c41448d77
patch 8.1.0518: Test_window_split_edit_bufnr() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15012
diff
changeset
|
199 execute l:baz_nr . 'wincmd ^' |
cc4c41448d77
patch 8.1.0518: Test_window_split_edit_bufnr() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15012
diff
changeset
|
200 call assert_equal('Xbaz', bufname(winbufnr(1))) |
cc4c41448d77
patch 8.1.0518: Test_window_split_edit_bufnr() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15012
diff
changeset
|
201 call assert_equal('Xbar', bufname(winbufnr(2))) |
cc4c41448d77
patch 8.1.0518: Test_window_split_edit_bufnr() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15012
diff
changeset
|
202 endif |
15006
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
203 |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
204 %bw! |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
205 endfunc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
206 |
19740
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
207 func Test_window_split_no_room() |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
208 " N horizontal windows need >= 2*N + 1 lines: |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
209 " - 1 line + 1 status line in each window |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
210 " - 1 Ex command line |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
211 " |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
212 " 2*N + 1 <= &lines |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
213 " N <= (lines - 1)/2 |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
214 " |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
215 " Beyond that number of windows, E36: Not enough room is expected. |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
216 let hor_win_count = (&lines - 1)/2 |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
217 let hor_split_count = hor_win_count - 1 |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
218 for s in range(1, hor_split_count) | split | endfor |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
219 call assert_fails('split', 'E36:') |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
220 |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
221 " N vertical windows need >= 2*(N - 1) + 1 columns: |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
222 " - 1 column + 1 separator for each window (except last window) |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
223 " - 1 column for the last window which does not have separator |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
224 " |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
225 " 2*(N - 1) + 1 <= &columns |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
226 " 2*N - 1 <= &columns |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
227 " N <= (&columns + 1)/2 |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
228 let ver_win_count = (&columns + 1)/2 |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
229 let ver_split_count = ver_win_count - 1 |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
230 for s in range(1, ver_split_count) | vsplit | endfor |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
231 call assert_fails('vsplit', 'E36:') |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
232 |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
233 %bw! |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
234 endfunc |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
235 |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
236 func Test_window_exchange() |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
237 e Xa |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
238 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
239 " Nothing happens with window exchange when there is 1 window |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
240 wincmd x |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
241 call assert_equal(1, winnr('$')) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
242 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
243 split Xb |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
244 split Xc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
245 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
246 call assert_equal('Xc', bufname(winbufnr(1))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
247 call assert_equal('Xb', bufname(winbufnr(2))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
248 call assert_equal('Xa', bufname(winbufnr(3))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
249 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
250 " Exchange current window 1 with window 3 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
251 3wincmd x |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
252 call assert_equal('Xa', bufname(winbufnr(1))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
253 call assert_equal('Xb', bufname(winbufnr(2))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
254 call assert_equal('Xc', bufname(winbufnr(3))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
255 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
256 " Exchange window with next when at the top window |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
257 wincmd x |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
258 call assert_equal('Xb', bufname(winbufnr(1))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
259 call assert_equal('Xa', bufname(winbufnr(2))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
260 call assert_equal('Xc', bufname(winbufnr(3))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
261 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
262 " Exchange window with next when at the middle window |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
263 wincmd j |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
264 wincmd x |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
265 call assert_equal('Xb', bufname(winbufnr(1))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
266 call assert_equal('Xc', bufname(winbufnr(2))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
267 call assert_equal('Xa', bufname(winbufnr(3))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
268 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
269 " Exchange window with next when at the bottom window. |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
270 " When there is no next window, it exchanges with the previous window. |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
271 wincmd j |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
272 wincmd x |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
273 call assert_equal('Xb', bufname(winbufnr(1))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
274 call assert_equal('Xa', bufname(winbufnr(2))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
275 call assert_equal('Xc', bufname(winbufnr(3))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
276 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
277 bw Xa Xb Xc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
278 endfunc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
279 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
280 func Test_window_rotate() |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
281 e Xa |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
282 split Xb |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
283 split Xc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
284 call assert_equal('Xc', bufname(winbufnr(1))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
285 call assert_equal('Xb', bufname(winbufnr(2))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
286 call assert_equal('Xa', bufname(winbufnr(3))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
287 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
288 " Rotate downwards |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
289 wincmd r |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
290 call assert_equal('Xa', bufname(winbufnr(1))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
291 call assert_equal('Xc', bufname(winbufnr(2))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
292 call assert_equal('Xb', bufname(winbufnr(3))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
293 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
294 2wincmd r |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
295 call assert_equal('Xc', bufname(winbufnr(1))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
296 call assert_equal('Xb', bufname(winbufnr(2))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
297 call assert_equal('Xa', bufname(winbufnr(3))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
298 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
299 " Rotate upwards |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
300 wincmd R |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
301 call assert_equal('Xb', bufname(winbufnr(1))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
302 call assert_equal('Xa', bufname(winbufnr(2))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
303 call assert_equal('Xc', bufname(winbufnr(3))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
304 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
305 2wincmd R |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
306 call assert_equal('Xc', bufname(winbufnr(1))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
307 call assert_equal('Xb', bufname(winbufnr(2))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
308 call assert_equal('Xa', bufname(winbufnr(3))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
309 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
310 bot vsplit |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
311 call assert_fails('wincmd R', 'E443:') |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
312 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
313 bw Xa Xb Xc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
314 endfunc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
315 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
316 func Test_window_height() |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
317 e Xa |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
318 split Xb |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
319 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
320 let [wh1, wh2] = [winheight(1), winheight(2)] |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
321 " Active window (1) should have the same height or 1 more |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
322 " than the other window. |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
323 call assert_inrange(wh2, wh2 + 1, wh1) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
324 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
325 wincmd - |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
326 call assert_equal(wh1 - 1, winheight(1)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
327 call assert_equal(wh2 + 1, winheight(2)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
328 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
329 wincmd + |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
330 call assert_equal(wh1, winheight(1)) |
18035
11dca9732a48
patch 8.1.2013: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
331 call assert_equal(wh2, 2->winheight()) |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
332 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
333 2wincmd _ |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
334 call assert_equal(2, winheight(1)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
335 call assert_equal(wh1 + wh2 - 2, winheight(2)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
336 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
337 wincmd = |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
338 call assert_equal(wh1, winheight(1)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
339 call assert_equal(wh2, winheight(2)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
340 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
341 2wincmd _ |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
342 set winfixheight |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
343 split Xc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
344 let [wh1, wh2, wh3] = [winheight(1), winheight(2), winheight(3)] |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
345 call assert_equal(2, winheight(2)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
346 call assert_inrange(wh3, wh3 + 1, wh1) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
347 3wincmd + |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
348 call assert_equal(2, winheight(2)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
349 call assert_equal(wh1 + 3, winheight(1)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
350 call assert_equal(wh3 - 3, winheight(3)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
351 wincmd = |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
352 call assert_equal(2, winheight(2)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
353 call assert_equal(wh1, winheight(1)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
354 call assert_equal(wh3, winheight(3)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
355 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
356 wincmd j |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
357 set winfixheight& |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
358 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
359 wincmd = |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
360 let [wh1, wh2, wh3] = [winheight(1), winheight(2), winheight(3)] |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
361 " Current window (2) should have the same height or 1 more |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
362 " than the other windows. |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
363 call assert_inrange(wh1, wh1 + 1, wh2) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
364 call assert_inrange(wh3, wh3 + 1, wh2) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
365 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
366 bw Xa Xb Xc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
367 endfunc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
368 |
30009
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
369 func Test_wincmd_equal() |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
370 edit Xone |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
371 below split Xtwo |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
372 rightbelow vsplit Xthree |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
373 call assert_equal('Xone', bufname(winbufnr(1))) |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
374 call assert_equal('Xtwo', bufname(winbufnr(2))) |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
375 call assert_equal('Xthree', bufname(winbufnr(3))) |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
376 |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
377 " Xone and Xtwo should be about the same height |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
378 let [wh1, wh2] = [winheight(1), winheight(2)] |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
379 call assert_inrange(wh1 - 1, wh1 + 1, wh2) |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
380 " Xtwo and Xthree should be about the same width |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
381 let [ww2, ww3] = [winwidth(2), winwidth(3)] |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
382 call assert_inrange(ww2 - 1, ww2 + 1, ww3) |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
383 |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
384 1wincmd w |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
385 10wincmd _ |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
386 2wincmd w |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
387 20wincmd | |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
388 call assert_equal(10, winheight(1)) |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
389 call assert_equal(20, winwidth(2)) |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
390 |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
391 " equalizing horizontally doesn't change the heights |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
392 hor wincmd = |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
393 call assert_equal(10, winheight(1)) |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
394 let [ww2, ww3] = [winwidth(2), winwidth(3)] |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
395 call assert_inrange(ww2 - 1, ww2 + 1, ww3) |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
396 |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
397 2wincmd w |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
398 20wincmd | |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
399 call assert_equal(20, winwidth(2)) |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
400 " equalizing vertically doesn't change the widths |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
401 vert wincmd = |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
402 call assert_equal(20, winwidth(2)) |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
403 let [wh1, wh2] = [winheight(1), winheight(2)] |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
404 call assert_inrange(wh1 - 1, wh1 + 1, wh2) |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
405 |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
406 bwipe Xone Xtwo Xthree |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
407 endfunc |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
408 |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
409 func Test_window_width() |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
410 e Xa |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
411 vsplit Xb |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
412 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
413 let [ww1, ww2] = [winwidth(1), winwidth(2)] |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
414 " Active window (1) should have the same width or 1 more |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
415 " than the other window. |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
416 call assert_inrange(ww2, ww2 + 1, ww1) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
417 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
418 wincmd < |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
419 call assert_equal(ww1 - 1, winwidth(1)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
420 call assert_equal(ww2 + 1, winwidth(2)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
421 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
422 wincmd > |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
423 call assert_equal(ww1, winwidth(1)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
424 call assert_equal(ww2, winwidth(2)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
425 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
426 2wincmd | |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
427 call assert_equal(2, winwidth(1)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
428 call assert_equal(ww1 + ww2 - 2, winwidth(2)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
429 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
430 wincmd = |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
431 call assert_equal(ww1, winwidth(1)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
432 call assert_equal(ww2, winwidth(2)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
433 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
434 2wincmd | |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
435 set winfixwidth |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
436 vsplit Xc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
437 let [ww1, ww2, ww3] = [winwidth(1), winwidth(2), winwidth(3)] |
11207
e6140f3d2be7
patch 8.0.0490: vertical split makes 'winfixwidth' window smaller
Christian Brabandt <cb@256bit.org>
parents:
11197
diff
changeset
|
438 call assert_equal(2, winwidth(2)) |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
439 call assert_inrange(ww3, ww3 + 1, ww1) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
440 3wincmd > |
11207
e6140f3d2be7
patch 8.0.0490: vertical split makes 'winfixwidth' window smaller
Christian Brabandt <cb@256bit.org>
parents:
11197
diff
changeset
|
441 call assert_equal(2, winwidth(2)) |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
442 call assert_equal(ww1 + 3, winwidth(1)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
443 call assert_equal(ww3 - 3, winwidth(3)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
444 wincmd = |
11207
e6140f3d2be7
patch 8.0.0490: vertical split makes 'winfixwidth' window smaller
Christian Brabandt <cb@256bit.org>
parents:
11197
diff
changeset
|
445 call assert_equal(2, winwidth(2)) |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
446 call assert_equal(ww1, winwidth(1)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
447 call assert_equal(ww3, winwidth(3)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
448 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
449 wincmd l |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
450 set winfixwidth& |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
451 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
452 wincmd = |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
453 let [ww1, ww2, ww3] = [winwidth(1), winwidth(2), winwidth(3)] |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
454 " Current window (2) should have the same width or 1 more |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
455 " than the other windows. |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
456 call assert_inrange(ww1, ww1 + 1, ww2) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
457 call assert_inrange(ww3, ww3 + 1, ww2) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
458 |
24882
4c1b6f3eb96b
patch 8.2.2979: not all options code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
24180
diff
changeset
|
459 " when the current window width is less than the new 'winwidth', the current |
4c1b6f3eb96b
patch 8.2.2979: not all options code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
24180
diff
changeset
|
460 " window width should be increased. |
4c1b6f3eb96b
patch 8.2.2979: not all options code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
24180
diff
changeset
|
461 enew | only |
4c1b6f3eb96b
patch 8.2.2979: not all options code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
24180
diff
changeset
|
462 split |
4c1b6f3eb96b
patch 8.2.2979: not all options code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
24180
diff
changeset
|
463 10vnew |
4c1b6f3eb96b
patch 8.2.2979: not all options code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
24180
diff
changeset
|
464 set winwidth=15 |
4c1b6f3eb96b
patch 8.2.2979: not all options code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
24180
diff
changeset
|
465 call assert_equal(15, winwidth(0)) |
4c1b6f3eb96b
patch 8.2.2979: not all options code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
24180
diff
changeset
|
466 |
4c1b6f3eb96b
patch 8.2.2979: not all options code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
24180
diff
changeset
|
467 %bw! |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
468 endfunc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
469 |
11591
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
470 func Test_equalalways_on_close() |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
471 set equalalways |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
472 vsplit |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
473 windo split |
15006
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
474 split |
11591
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
475 wincmd J |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
476 " now we have a frame top-left with two windows, a frame top-right with two |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
477 " windows and a frame at the bottom, full-width. |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
478 let height_1 = winheight(1) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
479 let height_2 = winheight(2) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
480 let height_3 = winheight(3) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
481 let height_4 = winheight(4) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
482 " closing the bottom window causes all windows to be resized. |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
483 close |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
484 call assert_notequal(height_1, winheight(1)) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
485 call assert_notequal(height_2, winheight(2)) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
486 call assert_notequal(height_3, winheight(3)) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
487 call assert_notequal(height_4, winheight(4)) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
488 call assert_equal(winheight(1), winheight(3)) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
489 call assert_equal(winheight(2), winheight(4)) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
490 |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
491 1wincmd w |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
492 split |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
493 4wincmd w |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
494 resize + 5 |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
495 " left column has three windows, equalized heights. |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
496 " right column has two windows, top one a bit higher |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
497 let height_1 = winheight(1) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
498 let height_2 = winheight(2) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
499 let height_4 = winheight(4) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
500 let height_5 = winheight(5) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
501 3wincmd w |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
502 " closing window in left column equalizes heights in left column but not in |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
503 " the right column |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
504 close |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
505 call assert_notequal(height_1, winheight(1)) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
506 call assert_notequal(height_2, winheight(2)) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
507 call assert_equal(height_4, winheight(3)) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
508 call assert_equal(height_5, winheight(4)) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
509 |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
510 only |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
511 set equalalways& |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
512 endfunc |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
513 |
12977
2d817fd289ba
patch 8.0.1364: there is no easy way to get the window position
Christian Brabandt <cb@256bit.org>
parents:
12019
diff
changeset
|
514 func Test_win_screenpos() |
18767
068337e86133
patch 8.1.2373: cannot build with +popupwin but without +quickfix
Bram Moolenaar <Bram@vim.org>
parents:
18253
diff
changeset
|
515 CheckFeature quickfix |
068337e86133
patch 8.1.2373: cannot build with +popupwin but without +quickfix
Bram Moolenaar <Bram@vim.org>
parents:
18253
diff
changeset
|
516 |
12977
2d817fd289ba
patch 8.0.1364: there is no easy way to get the window position
Christian Brabandt <cb@256bit.org>
parents:
12019
diff
changeset
|
517 call assert_equal(1, winnr('$')) |
2d817fd289ba
patch 8.0.1364: there is no easy way to get the window position
Christian Brabandt <cb@256bit.org>
parents:
12019
diff
changeset
|
518 split |
2d817fd289ba
patch 8.0.1364: there is no easy way to get the window position
Christian Brabandt <cb@256bit.org>
parents:
12019
diff
changeset
|
519 vsplit |
2d817fd289ba
patch 8.0.1364: there is no easy way to get the window position
Christian Brabandt <cb@256bit.org>
parents:
12019
diff
changeset
|
520 10wincmd _ |
2d817fd289ba
patch 8.0.1364: there is no easy way to get the window position
Christian Brabandt <cb@256bit.org>
parents:
12019
diff
changeset
|
521 30wincmd | |
2d817fd289ba
patch 8.0.1364: there is no easy way to get the window position
Christian Brabandt <cb@256bit.org>
parents:
12019
diff
changeset
|
522 call assert_equal([1, 1], win_screenpos(1)) |
2d817fd289ba
patch 8.0.1364: there is no easy way to get the window position
Christian Brabandt <cb@256bit.org>
parents:
12019
diff
changeset
|
523 call assert_equal([1, 32], win_screenpos(2)) |
2d817fd289ba
patch 8.0.1364: there is no easy way to get the window position
Christian Brabandt <cb@256bit.org>
parents:
12019
diff
changeset
|
524 call assert_equal([12, 1], win_screenpos(3)) |
2d817fd289ba
patch 8.0.1364: there is no easy way to get the window position
Christian Brabandt <cb@256bit.org>
parents:
12019
diff
changeset
|
525 call assert_equal([0, 0], win_screenpos(4)) |
20178
2fb397573541
patch 8.2.0644: insufficient testing for invalid function arguments
Bram Moolenaar <Bram@vim.org>
parents:
20120
diff
changeset
|
526 call assert_fails('let l = win_screenpos([])', 'E745:') |
12977
2d817fd289ba
patch 8.0.1364: there is no easy way to get the window position
Christian Brabandt <cb@256bit.org>
parents:
12019
diff
changeset
|
527 only |
2d817fd289ba
patch 8.0.1364: there is no easy way to get the window position
Christian Brabandt <cb@256bit.org>
parents:
12019
diff
changeset
|
528 endfunc |
2d817fd289ba
patch 8.0.1364: there is no easy way to get the window position
Christian Brabandt <cb@256bit.org>
parents:
12019
diff
changeset
|
529 |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
530 func Test_window_jump_tag() |
18767
068337e86133
patch 8.1.2373: cannot build with +popupwin but without +quickfix
Bram Moolenaar <Bram@vim.org>
parents:
18253
diff
changeset
|
531 CheckFeature quickfix |
068337e86133
patch 8.1.2373: cannot build with +popupwin but without +quickfix
Bram Moolenaar <Bram@vim.org>
parents:
18253
diff
changeset
|
532 |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
533 help |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
534 /iccf |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
535 call assert_match('^|iccf|', getline('.')) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
536 call assert_equal(2, winnr('$')) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
537 2wincmd } |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
538 call assert_equal(3, winnr('$')) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
539 call assert_match('^|iccf|', getline('.')) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
540 wincmd k |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
541 call assert_match('\*iccf\*', getline('.')) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
542 call assert_equal(2, winheight(0)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
543 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
544 wincmd z |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
545 set previewheight=4 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
546 help |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
547 /bugs |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
548 wincmd } |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
549 wincmd k |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
550 call assert_match('\*bugs\*', getline('.')) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
551 call assert_equal(4, winheight(0)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
552 set previewheight& |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
553 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
554 %bw! |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
555 endfunc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
556 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
557 func Test_window_newtab() |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
558 e Xa |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
559 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
560 call assert_equal(1, tabpagenr('$')) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
561 call assert_equal("\nAlready only one window", execute('wincmd T')) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
562 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
563 split Xb |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
564 split Xc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
565 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
566 wincmd T |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
567 call assert_equal(2, tabpagenr('$')) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
568 call assert_equal(['Xb', 'Xa'], map(tabpagebuflist(1), 'bufname(v:val)')) |
18031
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17746
diff
changeset
|
569 call assert_equal(['Xc' ], map(2->tabpagebuflist(), 'bufname(v:val)')) |
19783
546bdeef35f1
patch 8.2.0448: various functions not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19752
diff
changeset
|
570 call assert_equal(['Xc' ], map(tabpagebuflist(), 'bufname(v:val)')) |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
571 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
572 %bw! |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
573 endfunc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
574 |
11193
75ccc8a15a51
patch 8.0.0483: illegal memory access when using :all
Christian Brabandt <cb@256bit.org>
parents:
9909
diff
changeset
|
575 func Test_next_split_all() |
75ccc8a15a51
patch 8.0.0483: illegal memory access when using :all
Christian Brabandt <cb@256bit.org>
parents:
9909
diff
changeset
|
576 " This was causing an illegal memory access. |
75ccc8a15a51
patch 8.0.0483: illegal memory access when using :all
Christian Brabandt <cb@256bit.org>
parents:
9909
diff
changeset
|
577 n x |
75ccc8a15a51
patch 8.0.0483: illegal memory access when using :all
Christian Brabandt <cb@256bit.org>
parents:
9909
diff
changeset
|
578 norm axxx |
75ccc8a15a51
patch 8.0.0483: illegal memory access when using :all
Christian Brabandt <cb@256bit.org>
parents:
9909
diff
changeset
|
579 split |
75ccc8a15a51
patch 8.0.0483: illegal memory access when using :all
Christian Brabandt <cb@256bit.org>
parents:
9909
diff
changeset
|
580 split |
75ccc8a15a51
patch 8.0.0483: illegal memory access when using :all
Christian Brabandt <cb@256bit.org>
parents:
9909
diff
changeset
|
581 s/x |
75ccc8a15a51
patch 8.0.0483: illegal memory access when using :all
Christian Brabandt <cb@256bit.org>
parents:
9909
diff
changeset
|
582 s/x |
75ccc8a15a51
patch 8.0.0483: illegal memory access when using :all
Christian Brabandt <cb@256bit.org>
parents:
9909
diff
changeset
|
583 all |
75ccc8a15a51
patch 8.0.0483: illegal memory access when using :all
Christian Brabandt <cb@256bit.org>
parents:
9909
diff
changeset
|
584 bwipe! |
75ccc8a15a51
patch 8.0.0483: illegal memory access when using :all
Christian Brabandt <cb@256bit.org>
parents:
9909
diff
changeset
|
585 endfunc |
75ccc8a15a51
patch 8.0.0483: illegal memory access when using :all
Christian Brabandt <cb@256bit.org>
parents:
9909
diff
changeset
|
586 |
12019
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
587 " Tests for adjusting window and contents |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
588 func GetScreenStr(row) |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
589 let str = "" |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
590 for c in range(1,3) |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
591 let str .= nr2char(screenchar(a:row, c)) |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
592 endfor |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
593 return str |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
594 endfunc |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
595 |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
596 func Test_window_contents() |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
597 enew! | only | new |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
598 call setline(1, range(1,256)) |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
599 |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
600 exe "norm! \<C-W>t\<C-W>=1Gzt\<C-W>w\<C-W>+" |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
601 redraw |
13880
60e80884994d
patch 8.0.1811: no test for winrestcmd()
Christian Brabandt <cb@256bit.org>
parents:
13666
diff
changeset
|
602 let s3 = GetScreenStr(1) |
12019
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
603 wincmd p |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
604 call assert_equal(1, line("w0")) |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
605 call assert_equal('1 ', s3) |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
606 |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
607 exe "norm! \<C-W>t\<C-W>=50Gzt\<C-W>w\<C-W>+" |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
608 redraw |
13880
60e80884994d
patch 8.0.1811: no test for winrestcmd()
Christian Brabandt <cb@256bit.org>
parents:
13666
diff
changeset
|
609 let s3 = GetScreenStr(1) |
12019
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
610 wincmd p |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
611 call assert_equal(50, line("w0")) |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
612 call assert_equal('50 ', s3) |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
613 |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
614 exe "norm! \<C-W>t\<C-W>=59Gzt\<C-W>w\<C-W>+" |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
615 redraw |
13880
60e80884994d
patch 8.0.1811: no test for winrestcmd()
Christian Brabandt <cb@256bit.org>
parents:
13666
diff
changeset
|
616 let s3 = GetScreenStr(1) |
12019
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
617 wincmd p |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
618 call assert_equal(59, line("w0")) |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
619 call assert_equal('59 ', s3) |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
620 |
19724
b3e93a05c3ca
patch 8.2.0418: code in eval.c not sufficiently covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19435
diff
changeset
|
621 %d |
b3e93a05c3ca
patch 8.2.0418: code in eval.c not sufficiently covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19435
diff
changeset
|
622 call setline(1, ['one', 'two', 'three']) |
b3e93a05c3ca
patch 8.2.0418: code in eval.c not sufficiently covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19435
diff
changeset
|
623 call assert_equal(1, line('w0')) |
b3e93a05c3ca
patch 8.2.0418: code in eval.c not sufficiently covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19435
diff
changeset
|
624 call assert_equal(3, line('w$')) |
b3e93a05c3ca
patch 8.2.0418: code in eval.c not sufficiently covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19435
diff
changeset
|
625 |
12019
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
626 bwipeout! |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
627 call test_garbagecollect_now() |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
628 endfunc |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
629 |
13072
50aa6da392ce
patch 8.0.1411: reading invalid memory with CTRL-W :
Christian Brabandt <cb@256bit.org>
parents:
12977
diff
changeset
|
630 func Test_window_colon_command() |
50aa6da392ce
patch 8.0.1411: reading invalid memory with CTRL-W :
Christian Brabandt <cb@256bit.org>
parents:
12977
diff
changeset
|
631 " This was reading invalid memory. |
50aa6da392ce
patch 8.0.1411: reading invalid memory with CTRL-W :
Christian Brabandt <cb@256bit.org>
parents:
12977
diff
changeset
|
632 exe "norm! v\<C-W>:\<C-U>echo v:version" |
50aa6da392ce
patch 8.0.1411: reading invalid memory with CTRL-W :
Christian Brabandt <cb@256bit.org>
parents:
12977
diff
changeset
|
633 endfunc |
50aa6da392ce
patch 8.0.1411: reading invalid memory with CTRL-W :
Christian Brabandt <cb@256bit.org>
parents:
12977
diff
changeset
|
634 |
13144
20fb8c711050
patch 8.0.1446: acessing freed memory after window command in auto command
Christian Brabandt <cb@256bit.org>
parents:
13072
diff
changeset
|
635 func Test_access_freed_mem() |
17516
711db62c8aca
patch 8.1.1756: autocommand that splits window messes up window layout
Bram Moolenaar <Bram@vim.org>
parents:
17360
diff
changeset
|
636 call assert_equal(&columns, winwidth(0)) |
23758
97296182d336
patch 8.2.2420: too many problems with using all autocommand events
Bram Moolenaar <Bram@vim.org>
parents:
23748
diff
changeset
|
637 " This was accessing freed memory (but with what events?) |
97296182d336
patch 8.2.2420: too many problems with using all autocommand events
Bram Moolenaar <Bram@vim.org>
parents:
23748
diff
changeset
|
638 au BufEnter,BufLeave,WinEnter,WinLeave 0 vs xxx |
13144
20fb8c711050
patch 8.0.1446: acessing freed memory after window command in auto command
Christian Brabandt <cb@256bit.org>
parents:
13072
diff
changeset
|
639 arg 0 |
20fb8c711050
patch 8.0.1446: acessing freed memory after window command in auto command
Christian Brabandt <cb@256bit.org>
parents:
13072
diff
changeset
|
640 argadd |
21265
6a4806e326dd
patch 8.2.1183: assert_fails() checks the last error message
Bram Moolenaar <Bram@vim.org>
parents:
21020
diff
changeset
|
641 call assert_fails("all", "E242:") |
13144
20fb8c711050
patch 8.0.1446: acessing freed memory after window command in auto command
Christian Brabandt <cb@256bit.org>
parents:
13072
diff
changeset
|
642 au! |
20fb8c711050
patch 8.0.1446: acessing freed memory after window command in auto command
Christian Brabandt <cb@256bit.org>
parents:
13072
diff
changeset
|
643 bwipe xxx |
17516
711db62c8aca
patch 8.1.1756: autocommand that splits window messes up window layout
Bram Moolenaar <Bram@vim.org>
parents:
17360
diff
changeset
|
644 call assert_equal(&columns, winwidth(0)) |
13144
20fb8c711050
patch 8.0.1446: acessing freed memory after window command in auto command
Christian Brabandt <cb@256bit.org>
parents:
13072
diff
changeset
|
645 endfunc |
20fb8c711050
patch 8.0.1446: acessing freed memory after window command in auto command
Christian Brabandt <cb@256bit.org>
parents:
13072
diff
changeset
|
646 |
18253
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
647 func Test_insert_cleared_on_switch_to_term() |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
648 CheckFeature terminal |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
649 |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
650 set showmode |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
651 terminal |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
652 wincmd p |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
653 |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
654 call feedkeys("i\<C-O>", 'ntx') |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
655 redraw |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
656 |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
657 " The "-- (insert) --" indicator should be visible. |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
658 let chars = map(range(1, &columns), 'nr2char(screenchar(&lines, v:val))') |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
659 let str = trim(join(chars, '')) |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
660 call assert_equal('-- (insert) --', str) |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
661 |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
662 call feedkeys("\<C-W>p", 'ntx') |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
663 redraw |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
664 |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
665 " The "-- (insert) --" indicator should have been cleared. |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
666 let chars = map(range(1, &columns), 'nr2char(screenchar(&lines, v:val))') |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
667 let str = trim(join(chars, '')) |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
668 call assert_equal('', str) |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
669 |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
670 set showmode& |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
671 %bw! |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
672 endfunc |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
673 |
13666
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
674 func Test_visual_cleared_after_window_split() |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
675 new | only! |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
676 let smd_save = &showmode |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
677 set showmode |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
678 let ls_save = &laststatus |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
679 set laststatus=1 |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
680 call setline(1, ['a', 'b', 'c', 'd', '']) |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
681 norm! G |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
682 exe "norm! kkvk" |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
683 redraw |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
684 exe "norm! \<C-W>v" |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
685 redraw |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
686 " check if '-- VISUAL --' disappeared from command line |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
687 let columns = range(1, &columns) |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
688 let cmdlinechars = map(columns, 'nr2char(screenchar(&lines, v:val))') |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
689 let cmdline = join(cmdlinechars, '') |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
690 let cmdline_ltrim = substitute(cmdline, '^\s*', "", "") |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
691 let mode_shown = substitute(cmdline_ltrim, '\s*$', "", "") |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
692 call assert_equal('', mode_shown) |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
693 let &showmode = smd_save |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
694 let &laststatus = ls_save |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
695 bwipe! |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
696 endfunc |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
697 |
13880
60e80884994d
patch 8.0.1811: no test for winrestcmd()
Christian Brabandt <cb@256bit.org>
parents:
13666
diff
changeset
|
698 func Test_winrestcmd() |
60e80884994d
patch 8.0.1811: no test for winrestcmd()
Christian Brabandt <cb@256bit.org>
parents:
13666
diff
changeset
|
699 2split |
60e80884994d
patch 8.0.1811: no test for winrestcmd()
Christian Brabandt <cb@256bit.org>
parents:
13666
diff
changeset
|
700 3vsplit |
24180
3c165c7432ff
patch 8.2.2631: commands from winrestcmd() do not always work properly
Bram Moolenaar <Bram@vim.org>
parents:
23758
diff
changeset
|
701 let restcmd = winrestcmd() |
13880
60e80884994d
patch 8.0.1811: no test for winrestcmd()
Christian Brabandt <cb@256bit.org>
parents:
13666
diff
changeset
|
702 call assert_equal(2, winheight(0)) |
60e80884994d
patch 8.0.1811: no test for winrestcmd()
Christian Brabandt <cb@256bit.org>
parents:
13666
diff
changeset
|
703 call assert_equal(3, winwidth(0)) |
60e80884994d
patch 8.0.1811: no test for winrestcmd()
Christian Brabandt <cb@256bit.org>
parents:
13666
diff
changeset
|
704 wincmd = |
60e80884994d
patch 8.0.1811: no test for winrestcmd()
Christian Brabandt <cb@256bit.org>
parents:
13666
diff
changeset
|
705 call assert_notequal(2, winheight(0)) |
60e80884994d
patch 8.0.1811: no test for winrestcmd()
Christian Brabandt <cb@256bit.org>
parents:
13666
diff
changeset
|
706 call assert_notequal(3, winwidth(0)) |
24180
3c165c7432ff
patch 8.2.2631: commands from winrestcmd() do not always work properly
Bram Moolenaar <Bram@vim.org>
parents:
23758
diff
changeset
|
707 exe restcmd |
13880
60e80884994d
patch 8.0.1811: no test for winrestcmd()
Christian Brabandt <cb@256bit.org>
parents:
13666
diff
changeset
|
708 call assert_equal(2, winheight(0)) |
60e80884994d
patch 8.0.1811: no test for winrestcmd()
Christian Brabandt <cb@256bit.org>
parents:
13666
diff
changeset
|
709 call assert_equal(3, winwidth(0)) |
60e80884994d
patch 8.0.1811: no test for winrestcmd()
Christian Brabandt <cb@256bit.org>
parents:
13666
diff
changeset
|
710 only |
24180
3c165c7432ff
patch 8.2.2631: commands from winrestcmd() do not always work properly
Bram Moolenaar <Bram@vim.org>
parents:
23758
diff
changeset
|
711 |
3c165c7432ff
patch 8.2.2631: commands from winrestcmd() do not always work properly
Bram Moolenaar <Bram@vim.org>
parents:
23758
diff
changeset
|
712 wincmd v |
3c165c7432ff
patch 8.2.2631: commands from winrestcmd() do not always work properly
Bram Moolenaar <Bram@vim.org>
parents:
23758
diff
changeset
|
713 wincmd s |
3c165c7432ff
patch 8.2.2631: commands from winrestcmd() do not always work properly
Bram Moolenaar <Bram@vim.org>
parents:
23758
diff
changeset
|
714 wincmd v |
3c165c7432ff
patch 8.2.2631: commands from winrestcmd() do not always work properly
Bram Moolenaar <Bram@vim.org>
parents:
23758
diff
changeset
|
715 redraw |
3c165c7432ff
patch 8.2.2631: commands from winrestcmd() do not always work properly
Bram Moolenaar <Bram@vim.org>
parents:
23758
diff
changeset
|
716 let restcmd = winrestcmd() |
3c165c7432ff
patch 8.2.2631: commands from winrestcmd() do not always work properly
Bram Moolenaar <Bram@vim.org>
parents:
23758
diff
changeset
|
717 wincmd _ |
3c165c7432ff
patch 8.2.2631: commands from winrestcmd() do not always work properly
Bram Moolenaar <Bram@vim.org>
parents:
23758
diff
changeset
|
718 wincmd | |
3c165c7432ff
patch 8.2.2631: commands from winrestcmd() do not always work properly
Bram Moolenaar <Bram@vim.org>
parents:
23758
diff
changeset
|
719 exe restcmd |
3c165c7432ff
patch 8.2.2631: commands from winrestcmd() do not always work properly
Bram Moolenaar <Bram@vim.org>
parents:
23758
diff
changeset
|
720 redraw |
3c165c7432ff
patch 8.2.2631: commands from winrestcmd() do not always work properly
Bram Moolenaar <Bram@vim.org>
parents:
23758
diff
changeset
|
721 call assert_equal(restcmd, winrestcmd()) |
3c165c7432ff
patch 8.2.2631: commands from winrestcmd() do not always work properly
Bram Moolenaar <Bram@vim.org>
parents:
23758
diff
changeset
|
722 |
3c165c7432ff
patch 8.2.2631: commands from winrestcmd() do not always work properly
Bram Moolenaar <Bram@vim.org>
parents:
23758
diff
changeset
|
723 only |
13880
60e80884994d
patch 8.0.1811: no test for winrestcmd()
Christian Brabandt <cb@256bit.org>
parents:
13666
diff
changeset
|
724 endfunc |
60e80884994d
patch 8.0.1811: no test for winrestcmd()
Christian Brabandt <cb@256bit.org>
parents:
13666
diff
changeset
|
725 |
15406
63b02fcf1361
patch 8.1.0711: test files still use function!
Bram Moolenaar <Bram@vim.org>
parents:
15241
diff
changeset
|
726 func Fun_RenewFile() |
17746
a4e488a6655c
patch 8.1.1870: using :pedit from a help file sets help filetype
Bram Moolenaar <Bram@vim.org>
parents:
17516
diff
changeset
|
727 " Need to wait a bit for the timestamp to be older. |
18031
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17746
diff
changeset
|
728 let old_ftime = getftime("tmp.txt") |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17746
diff
changeset
|
729 while getftime("tmp.txt") == old_ftime |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17746
diff
changeset
|
730 sleep 100m |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17746
diff
changeset
|
731 silent execute '!echo "1" > tmp.txt' |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17746
diff
changeset
|
732 endwhile |
15241
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
733 sp |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
734 wincmd p |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
735 edit! tmp.txt |
15406
63b02fcf1361
patch 8.1.0711: test files still use function!
Bram Moolenaar <Bram@vim.org>
parents:
15241
diff
changeset
|
736 endfunc |
15241
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
737 |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
738 func Test_window_prevwin() |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
739 " Can we make this work on MS-Windows? |
21765
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
21265
diff
changeset
|
740 CheckUnix |
15241
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
741 |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
742 set hidden autoread |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
743 call writefile(['2'], 'tmp.txt') |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
744 new tmp.txt |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
745 q |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
746 call Fun_RenewFile() |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
747 call assert_equal(2, winnr()) |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
748 wincmd p |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
749 call assert_equal(1, winnr()) |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
750 wincmd p |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
751 q |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
752 call Fun_RenewFile() |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
753 call assert_equal(2, winnr()) |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
754 wincmd p |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
755 call assert_equal(1, winnr()) |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
756 wincmd p |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
757 " reset |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
758 q |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
759 call delete('tmp.txt') |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
760 set hidden&vim autoread&vim |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
761 delfunc Fun_RenewFile |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
762 endfunc |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
763 |
15977
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
764 func Test_relative_cursor_position_in_one_line_window() |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
765 new |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
766 only |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
767 call setline(1, range(1, 10000)) |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
768 normal 50% |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
769 let lnum = getcurpos()[1] |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
770 split |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
771 split |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
772 " make third window take as many lines as possible, other windows will |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
773 " become one line |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
774 3wincmd w |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
775 for i in range(1, &lines - 6) |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
776 wincmd + |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
777 redraw! |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
778 endfor |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
779 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
780 " first and second window should show cursor line |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
781 let wininfo = getwininfo() |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
782 call assert_equal(lnum, wininfo[0].topline) |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
783 call assert_equal(lnum, wininfo[1].topline) |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
784 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
785 only! |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
786 bwipe! |
29994
86eb4aba16c3
patch 9.0.0335: checks for Dictionary argument often give a vague error
Bram Moolenaar <Bram@vim.org>
parents:
29694
diff
changeset
|
787 call assert_fails('call winrestview(test_null_dict())', 'E1297:') |
15977
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
788 endfunc |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
789 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
790 func Test_relative_cursor_position_after_move_and_resize() |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
791 let so_save = &so |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
792 set so=0 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
793 enew |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
794 call setline(1, range(1, 10000)) |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
795 normal 50% |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
796 split |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
797 1wincmd w |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
798 " Move cursor to first line in window |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
799 normal H |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
800 redraw! |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
801 " Reduce window height to two lines |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
802 let height = winheight(0) |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
803 while winheight(0) > 2 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
804 wincmd - |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
805 redraw! |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
806 endwhile |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
807 " move cursor to second/last line in window |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
808 normal j |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
809 " restore previous height |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
810 while winheight(0) < height |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
811 wincmd + |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
812 redraw! |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
813 endwhile |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
814 " make window two lines again |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
815 while winheight(0) > 2 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
816 wincmd - |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
817 redraw! |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
818 endwhile |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
819 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
820 " cursor should be at bottom line |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
821 let info = getwininfo(win_getid())[0] |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
822 call assert_equal(info.topline + 1, getcurpos()[1]) |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
823 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
824 only! |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
825 bwipe! |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
826 let &so = so_save |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
827 endfunc |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
828 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
829 func Test_relative_cursor_position_after_resize() |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
830 let so_save = &so |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
831 set so=0 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
832 enew |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
833 call setline(1, range(1, 10000)) |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
834 normal 50% |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
835 split |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
836 1wincmd w |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
837 let winid1 = win_getid() |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
838 let info = getwininfo(winid1)[0] |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
839 " Move cursor to second line in window |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
840 exe "normal " . (info.topline + 1) . "G" |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
841 redraw! |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
842 let lnum = getcurpos()[1] |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
843 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
844 " Make the window only two lines high, cursor should end up in top line |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
845 2wincmd w |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
846 exe (info.height - 2) . "wincmd +" |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
847 redraw! |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
848 let info = getwininfo(winid1)[0] |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
849 call assert_equal(lnum, info.topline) |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
850 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
851 only! |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
852 bwipe! |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
853 let &so = so_save |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
854 endfunc |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
855 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
856 func Test_relative_cursor_second_line_after_resize() |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
857 let so_save = &so |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
858 set so=0 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
859 enew |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
860 call setline(1, range(1, 10000)) |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
861 normal 50% |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
862 split |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
863 1wincmd w |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
864 let winid1 = win_getid() |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
865 let info = getwininfo(winid1)[0] |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
866 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
867 " Make the window only two lines high |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
868 2wincmd _ |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
869 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
870 " Move cursor to second line in window |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
871 normal H |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
872 normal j |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
873 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
874 " Make window size bigger, then back to 2 lines |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
875 for i in range(1, 10) |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
876 wincmd + |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
877 redraw! |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
878 endfor |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
879 for i in range(1, 10) |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
880 wincmd - |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
881 redraw! |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
882 endfor |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
883 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
884 " cursor should end up in bottom line |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
885 let info = getwininfo(winid1)[0] |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
886 call assert_equal(info.topline + 1, getcurpos()[1]) |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
887 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
888 only! |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
889 bwipe! |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
890 let &so = so_save |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
891 endfunc |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
892 |
16650
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
893 func Test_split_noscroll() |
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
894 let so_save = &so |
16690
4e3c4e8e465c
patch 8.1.1347: fractional scroll position not restored after closing window
Bram Moolenaar <Bram@vim.org>
parents:
16650
diff
changeset
|
895 enew |
4e3c4e8e465c
patch 8.1.1347: fractional scroll position not restored after closing window
Bram Moolenaar <Bram@vim.org>
parents:
16650
diff
changeset
|
896 call setline(1, range(1, 8)) |
16650
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
897 normal 100% |
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
898 split |
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
899 |
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
900 1wincmd w |
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
901 let winid1 = win_getid() |
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
902 let info1 = getwininfo(winid1)[0] |
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
903 |
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
904 2wincmd w |
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
905 let winid2 = win_getid() |
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
906 let info2 = getwininfo(winid2)[0] |
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
907 |
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
908 call assert_equal(1, info1.topline) |
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
909 call assert_equal(1, info2.topline) |
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
910 |
16690
4e3c4e8e465c
patch 8.1.1347: fractional scroll position not restored after closing window
Bram Moolenaar <Bram@vim.org>
parents:
16650
diff
changeset
|
911 " window that fits all lines by itself, but not when split: closing other |
4e3c4e8e465c
patch 8.1.1347: fractional scroll position not restored after closing window
Bram Moolenaar <Bram@vim.org>
parents:
16650
diff
changeset
|
912 " window should restore fraction. |
16650
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
913 only! |
16690
4e3c4e8e465c
patch 8.1.1347: fractional scroll position not restored after closing window
Bram Moolenaar <Bram@vim.org>
parents:
16650
diff
changeset
|
914 call setline(1, range(1, &lines - 10)) |
4e3c4e8e465c
patch 8.1.1347: fractional scroll position not restored after closing window
Bram Moolenaar <Bram@vim.org>
parents:
16650
diff
changeset
|
915 exe &lines / 4 |
4e3c4e8e465c
patch 8.1.1347: fractional scroll position not restored after closing window
Bram Moolenaar <Bram@vim.org>
parents:
16650
diff
changeset
|
916 let winid1 = win_getid() |
4e3c4e8e465c
patch 8.1.1347: fractional scroll position not restored after closing window
Bram Moolenaar <Bram@vim.org>
parents:
16650
diff
changeset
|
917 let info1 = getwininfo(winid1)[0] |
4e3c4e8e465c
patch 8.1.1347: fractional scroll position not restored after closing window
Bram Moolenaar <Bram@vim.org>
parents:
16650
diff
changeset
|
918 call assert_equal(1, info1.topline) |
4e3c4e8e465c
patch 8.1.1347: fractional scroll position not restored after closing window
Bram Moolenaar <Bram@vim.org>
parents:
16650
diff
changeset
|
919 new |
4e3c4e8e465c
patch 8.1.1347: fractional scroll position not restored after closing window
Bram Moolenaar <Bram@vim.org>
parents:
16650
diff
changeset
|
920 redraw |
4e3c4e8e465c
patch 8.1.1347: fractional scroll position not restored after closing window
Bram Moolenaar <Bram@vim.org>
parents:
16650
diff
changeset
|
921 close |
4e3c4e8e465c
patch 8.1.1347: fractional scroll position not restored after closing window
Bram Moolenaar <Bram@vim.org>
parents:
16650
diff
changeset
|
922 let info1 = getwininfo(winid1)[0] |
4e3c4e8e465c
patch 8.1.1347: fractional scroll position not restored after closing window
Bram Moolenaar <Bram@vim.org>
parents:
16650
diff
changeset
|
923 call assert_equal(1, info1.topline) |
4e3c4e8e465c
patch 8.1.1347: fractional scroll position not restored after closing window
Bram Moolenaar <Bram@vim.org>
parents:
16650
diff
changeset
|
924 |
16650
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
925 bwipe! |
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
926 let &so = so_save |
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
927 endfunc |
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
928 |
16271
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
929 " Tests for the winnr() function |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
930 func Test_winnr() |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
931 only | tabonly |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
932 call assert_equal(1, winnr('j')) |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
933 call assert_equal(1, winnr('k')) |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
934 call assert_equal(1, winnr('h')) |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
935 call assert_equal(1, winnr('l')) |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
936 |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
937 " create a set of horizontally and vertically split windows |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
938 leftabove new | wincmd p |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
939 leftabove new | wincmd p |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
940 rightbelow new | wincmd p |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
941 rightbelow new | wincmd p |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
942 leftabove vnew | wincmd p |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
943 leftabove vnew | wincmd p |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
944 rightbelow vnew | wincmd p |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
945 rightbelow vnew | wincmd p |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
946 |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
947 call assert_equal(8, winnr('j')) |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
948 call assert_equal(2, winnr('k')) |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
949 call assert_equal(4, winnr('h')) |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
950 call assert_equal(6, winnr('l')) |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
951 call assert_equal(9, winnr('2j')) |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
952 call assert_equal(1, winnr('2k')) |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
953 call assert_equal(3, winnr('2h')) |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
954 call assert_equal(7, winnr('2l')) |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
955 |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
956 " Error cases |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
957 call assert_fails("echo winnr('0.2k')", 'E15:') |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
958 call assert_equal(2, winnr('-2k')) |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
959 call assert_fails("echo winnr('-2xj')", 'E15:') |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
960 call assert_fails("echo winnr('j2j')", 'E15:') |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
961 call assert_fails("echo winnr('ll')", 'E15:') |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
962 call assert_fails("echo winnr('5')", 'E15:') |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
963 call assert_equal(4, winnr('0h')) |
20178
2fb397573541
patch 8.2.0644: insufficient testing for invalid function arguments
Bram Moolenaar <Bram@vim.org>
parents:
20120
diff
changeset
|
964 call assert_fails("let w = winnr([])", 'E730:') |
2fb397573541
patch 8.2.0644: insufficient testing for invalid function arguments
Bram Moolenaar <Bram@vim.org>
parents:
20120
diff
changeset
|
965 call assert_equal('unknown', win_gettype(-1)) |
2fb397573541
patch 8.2.0644: insufficient testing for invalid function arguments
Bram Moolenaar <Bram@vim.org>
parents:
20120
diff
changeset
|
966 call assert_equal(-1, winheight(-1)) |
2fb397573541
patch 8.2.0644: insufficient testing for invalid function arguments
Bram Moolenaar <Bram@vim.org>
parents:
20120
diff
changeset
|
967 call assert_equal(-1, winwidth(-1)) |
16271
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
968 |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
969 tabnew |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
970 call assert_equal(8, tabpagewinnr(1, 'j')) |
18031
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17746
diff
changeset
|
971 call assert_equal(2, 1->tabpagewinnr('k')) |
16271
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
972 call assert_equal(4, tabpagewinnr(1, 'h')) |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
973 call assert_equal(6, tabpagewinnr(1, 'l')) |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
974 |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
975 only | tabonly |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
976 endfunc |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
977 |
18035
11dca9732a48
patch 8.1.2013: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
978 func Test_winrestview() |
11dca9732a48
patch 8.1.2013: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
979 split runtest.vim |
11dca9732a48
patch 8.1.2013: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
980 normal 50% |
11dca9732a48
patch 8.1.2013: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
981 let view = winsaveview() |
11dca9732a48
patch 8.1.2013: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
982 close |
11dca9732a48
patch 8.1.2013: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
983 split runtest.vim |
11dca9732a48
patch 8.1.2013: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
984 eval view->winrestview() |
11dca9732a48
patch 8.1.2013: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
985 call assert_equal(view, winsaveview()) |
11dca9732a48
patch 8.1.2013: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
986 |
11dca9732a48
patch 8.1.2013: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
987 bwipe! |
29994
86eb4aba16c3
patch 9.0.0335: checks for Dictionary argument often give a vague error
Bram Moolenaar <Bram@vim.org>
parents:
29694
diff
changeset
|
988 call assert_fails('call winrestview(test_null_dict())', 'E1297:') |
18035
11dca9732a48
patch 8.1.2013: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
989 endfunc |
11dca9732a48
patch 8.1.2013: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
990 |
18049
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
991 func Test_win_splitmove() |
18767
068337e86133
patch 8.1.2373: cannot build with +popupwin but without +quickfix
Bram Moolenaar <Bram@vim.org>
parents:
18253
diff
changeset
|
992 CheckFeature quickfix |
068337e86133
patch 8.1.2373: cannot build with +popupwin but without +quickfix
Bram Moolenaar <Bram@vim.org>
parents:
18253
diff
changeset
|
993 |
18049
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
994 edit a |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
995 leftabove split b |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
996 leftabove vsplit c |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
997 leftabove split d |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
998 call assert_equal(0, win_splitmove(winnr(), winnr('l'))) |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
999 call assert_equal(bufname(winbufnr(1)), 'c') |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1000 call assert_equal(bufname(winbufnr(2)), 'd') |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1001 call assert_equal(bufname(winbufnr(3)), 'b') |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1002 call assert_equal(bufname(winbufnr(4)), 'a') |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1003 call assert_equal(0, win_splitmove(winnr(), winnr('j'), {'vertical': 1})) |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1004 call assert_equal(0, win_splitmove(winnr(), winnr('j'), {'vertical': 1})) |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1005 call assert_equal(bufname(winbufnr(1)), 'c') |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1006 call assert_equal(bufname(winbufnr(2)), 'b') |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1007 call assert_equal(bufname(winbufnr(3)), 'd') |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1008 call assert_equal(bufname(winbufnr(4)), 'a') |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1009 call assert_equal(0, win_splitmove(winnr(), winnr('k'), {'vertical': 1})) |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1010 call assert_equal(bufname(winbufnr(1)), 'd') |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1011 call assert_equal(bufname(winbufnr(2)), 'c') |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1012 call assert_equal(bufname(winbufnr(3)), 'b') |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1013 call assert_equal(bufname(winbufnr(4)), 'a') |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1014 call assert_equal(0, win_splitmove(winnr(), winnr('j'), {'rightbelow': v:true})) |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1015 call assert_equal(bufname(winbufnr(1)), 'c') |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1016 call assert_equal(bufname(winbufnr(2)), 'b') |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1017 call assert_equal(bufname(winbufnr(3)), 'a') |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1018 call assert_equal(bufname(winbufnr(4)), 'd') |
29994
86eb4aba16c3
patch 9.0.0335: checks for Dictionary argument often give a vague error
Bram Moolenaar <Bram@vim.org>
parents:
29694
diff
changeset
|
1019 call assert_fails('call win_splitmove(winnr(), winnr("k"), test_null_dict())', 'E1297:') |
18049
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1020 only | bd |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1021 |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1022 call assert_fails('call win_splitmove(winnr(), 123)', 'E957:') |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1023 call assert_fails('call win_splitmove(123, winnr())', 'E957:') |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1024 call assert_fails('call win_splitmove(winnr(), winnr())', 'E957:') |
19065
ef3633932b0c
patch 8.2.0093: win_splitmove() can make Vim hang
Bram Moolenaar <Bram@vim.org>
parents:
18767
diff
changeset
|
1025 |
ef3633932b0c
patch 8.2.0093: win_splitmove() can make Vim hang
Bram Moolenaar <Bram@vim.org>
parents:
18767
diff
changeset
|
1026 tabnew |
ef3633932b0c
patch 8.2.0093: win_splitmove() can make Vim hang
Bram Moolenaar <Bram@vim.org>
parents:
18767
diff
changeset
|
1027 call assert_fails('call win_splitmove(1, win_getid(1, 1))', 'E957:') |
ef3633932b0c
patch 8.2.0093: win_splitmove() can make Vim hang
Bram Moolenaar <Bram@vim.org>
parents:
18767
diff
changeset
|
1028 tabclose |
18049
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1029 endfunc |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1030 |
19289
2f0f308c069c
patch 8.2.0203: :helptags and some other functionality not tested
Bram Moolenaar <Bram@vim.org>
parents:
19065
diff
changeset
|
1031 " Test for the :only command |
2f0f308c069c
patch 8.2.0203: :helptags and some other functionality not tested
Bram Moolenaar <Bram@vim.org>
parents:
19065
diff
changeset
|
1032 func Test_window_only() |
2f0f308c069c
patch 8.2.0203: :helptags and some other functionality not tested
Bram Moolenaar <Bram@vim.org>
parents:
19065
diff
changeset
|
1033 new |
2f0f308c069c
patch 8.2.0203: :helptags and some other functionality not tested
Bram Moolenaar <Bram@vim.org>
parents:
19065
diff
changeset
|
1034 set modified |
2f0f308c069c
patch 8.2.0203: :helptags and some other functionality not tested
Bram Moolenaar <Bram@vim.org>
parents:
19065
diff
changeset
|
1035 new |
2f0f308c069c
patch 8.2.0203: :helptags and some other functionality not tested
Bram Moolenaar <Bram@vim.org>
parents:
19065
diff
changeset
|
1036 call assert_fails('only', 'E445:') |
2f0f308c069c
patch 8.2.0203: :helptags and some other functionality not tested
Bram Moolenaar <Bram@vim.org>
parents:
19065
diff
changeset
|
1037 only! |
19425
67fbe280a502
patch 8.2.0270: some code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19370
diff
changeset
|
1038 " Test for :only with a count |
67fbe280a502
patch 8.2.0270: some code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19370
diff
changeset
|
1039 let wid = win_getid() |
67fbe280a502
patch 8.2.0270: some code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19370
diff
changeset
|
1040 new |
67fbe280a502
patch 8.2.0270: some code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19370
diff
changeset
|
1041 new |
67fbe280a502
patch 8.2.0270: some code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19370
diff
changeset
|
1042 3only |
67fbe280a502
patch 8.2.0270: some code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19370
diff
changeset
|
1043 call assert_equal(1, winnr('$')) |
67fbe280a502
patch 8.2.0270: some code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19370
diff
changeset
|
1044 call assert_equal(wid, win_getid()) |
67fbe280a502
patch 8.2.0270: some code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19370
diff
changeset
|
1045 call assert_fails('close', 'E444:') |
67fbe280a502
patch 8.2.0270: some code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19370
diff
changeset
|
1046 call assert_fails('%close', 'E16:') |
19289
2f0f308c069c
patch 8.2.0203: :helptags and some other functionality not tested
Bram Moolenaar <Bram@vim.org>
parents:
19065
diff
changeset
|
1047 endfunc |
2f0f308c069c
patch 8.2.0203: :helptags and some other functionality not tested
Bram Moolenaar <Bram@vim.org>
parents:
19065
diff
changeset
|
1048 |
19370
02111977dd05
patch 8.2.0243: insufficient code coverage for ex_docmd.c functions
Bram Moolenaar <Bram@vim.org>
parents:
19289
diff
changeset
|
1049 " Test for errors with :wincmd |
02111977dd05
patch 8.2.0243: insufficient code coverage for ex_docmd.c functions
Bram Moolenaar <Bram@vim.org>
parents:
19289
diff
changeset
|
1050 func Test_wincmd_errors() |
02111977dd05
patch 8.2.0243: insufficient code coverage for ex_docmd.c functions
Bram Moolenaar <Bram@vim.org>
parents:
19289
diff
changeset
|
1051 call assert_fails('wincmd g', 'E474:') |
02111977dd05
patch 8.2.0243: insufficient code coverage for ex_docmd.c functions
Bram Moolenaar <Bram@vim.org>
parents:
19289
diff
changeset
|
1052 call assert_fails('wincmd ab', 'E474:') |
02111977dd05
patch 8.2.0243: insufficient code coverage for ex_docmd.c functions
Bram Moolenaar <Bram@vim.org>
parents:
19289
diff
changeset
|
1053 endfunc |
02111977dd05
patch 8.2.0243: insufficient code coverage for ex_docmd.c functions
Bram Moolenaar <Bram@vim.org>
parents:
19289
diff
changeset
|
1054 |
02111977dd05
patch 8.2.0243: insufficient code coverage for ex_docmd.c functions
Bram Moolenaar <Bram@vim.org>
parents:
19289
diff
changeset
|
1055 " Test for errors with :winpos |
02111977dd05
patch 8.2.0243: insufficient code coverage for ex_docmd.c functions
Bram Moolenaar <Bram@vim.org>
parents:
19289
diff
changeset
|
1056 func Test_winpos_errors() |
02111977dd05
patch 8.2.0243: insufficient code coverage for ex_docmd.c functions
Bram Moolenaar <Bram@vim.org>
parents:
19289
diff
changeset
|
1057 if !has("gui_running") && !has('win32') |
02111977dd05
patch 8.2.0243: insufficient code coverage for ex_docmd.c functions
Bram Moolenaar <Bram@vim.org>
parents:
19289
diff
changeset
|
1058 call assert_fails('winpos', 'E188:') |
02111977dd05
patch 8.2.0243: insufficient code coverage for ex_docmd.c functions
Bram Moolenaar <Bram@vim.org>
parents:
19289
diff
changeset
|
1059 endif |
02111977dd05
patch 8.2.0243: insufficient code coverage for ex_docmd.c functions
Bram Moolenaar <Bram@vim.org>
parents:
19289
diff
changeset
|
1060 call assert_fails('winpos 10', 'E466:') |
02111977dd05
patch 8.2.0243: insufficient code coverage for ex_docmd.c functions
Bram Moolenaar <Bram@vim.org>
parents:
19289
diff
changeset
|
1061 endfunc |
02111977dd05
patch 8.2.0243: insufficient code coverage for ex_docmd.c functions
Bram Moolenaar <Bram@vim.org>
parents:
19289
diff
changeset
|
1062 |
19435
8f8a5a15d00a
patch 8.2.0275: some Ex code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19425
diff
changeset
|
1063 " Test for +cmd in a :split command |
8f8a5a15d00a
patch 8.2.0275: some Ex code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19425
diff
changeset
|
1064 func Test_split_cmd() |
8f8a5a15d00a
patch 8.2.0275: some Ex code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19425
diff
changeset
|
1065 split +set\ readonly |
8f8a5a15d00a
patch 8.2.0275: some Ex code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19425
diff
changeset
|
1066 call assert_equal(1, &readonly) |
8f8a5a15d00a
patch 8.2.0275: some Ex code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19425
diff
changeset
|
1067 call assert_equal(2, winnr('$')) |
8f8a5a15d00a
patch 8.2.0275: some Ex code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19425
diff
changeset
|
1068 close |
8f8a5a15d00a
patch 8.2.0275: some Ex code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19425
diff
changeset
|
1069 endfunc |
8f8a5a15d00a
patch 8.2.0275: some Ex code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19425
diff
changeset
|
1070 |
19748
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1071 " Create maximum number of horizontally or vertically split windows and then |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1072 " run commands that create a new horizontally/vertically split window |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1073 func Run_noroom_for_newwindow_test(dir_arg) |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1074 let dir = (a:dir_arg == 'v') ? 'vert ' : '' |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1075 |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1076 " Open as many windows as possible |
19752
0927df746554
patch 8.2.0432: a few tests fail in a huge terminal
Bram Moolenaar <Bram@vim.org>
parents:
19748
diff
changeset
|
1077 while v:true |
19748
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1078 try |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1079 exe dir . 'new' |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1080 catch /E36:/ |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1081 break |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1082 endtry |
19752
0927df746554
patch 8.2.0432: a few tests fail in a huge terminal
Bram Moolenaar <Bram@vim.org>
parents:
19748
diff
changeset
|
1083 endwhile |
19748
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1084 |
30051
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1085 call writefile(['first', 'second', 'third'], 'Xnorfile1') |
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1086 call writefile([], 'Xnorfile2') |
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1087 call writefile([], 'Xnorfile3') |
19748
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1088 |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1089 " Argument list related commands |
30051
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1090 args Xnorfile1 Xnorfile2 Xnorfile3 |
19748
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1091 next |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1092 for cmd in ['sargument 2', 'snext', 'sprevious', 'sNext', 'srewind', |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1093 \ 'sfirst', 'slast'] |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1094 call assert_fails(dir .. cmd, 'E36:') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1095 endfor |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1096 %argdelete |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1097 |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1098 " Buffer related commands |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1099 set modified |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1100 hide enew |
30051
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1101 for cmd in ['sbuffer Xnorfile1', 'sbnext', 'sbprevious', 'sbNext', 'sbrewind', |
19748
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1102 \ 'sbfirst', 'sblast', 'sball', 'sbmodified', 'sunhide'] |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1103 call assert_fails(dir .. cmd, 'E36:') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1104 endfor |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1105 |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1106 " Window related commands |
30051
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1107 for cmd in ['split', 'split Xnorfile2', 'new', 'new Xnorfile3', 'sview Xnorfile1', |
19748
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1108 \ 'sfind runtest.vim'] |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1109 call assert_fails(dir .. cmd, 'E36:') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1110 endfor |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1111 |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1112 " Help |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1113 call assert_fails(dir .. 'help', 'E36:') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1114 call assert_fails(dir .. 'helpgrep window', 'E36:') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1115 |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1116 " Command-line window |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1117 if a:dir_arg == 'h' |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1118 " Cmd-line window is always a horizontally split window |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1119 call assert_beeps('call feedkeys("q:\<CR>", "xt")') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1120 endif |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1121 |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1122 " Quickfix and location list window |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1123 if has('quickfix') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1124 cexpr '' |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1125 call assert_fails(dir .. 'copen', 'E36:') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1126 lexpr '' |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1127 call assert_fails(dir .. 'lopen', 'E36:') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1128 |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1129 " Preview window |
30051
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1130 call assert_fails(dir .. 'pedit Xnorfile2', 'E36:') |
19748
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1131 call setline(1, 'abc') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1132 call assert_fails(dir .. 'psearch abc', 'E36:') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1133 endif |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1134 |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1135 " Window commands (CTRL-W ^ and CTRL-W f) |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1136 if a:dir_arg == 'h' |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1137 call assert_fails('call feedkeys("\<C-W>^", "xt")', 'E36:') |
30051
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1138 call setline(1, 'Xnorfile1') |
19748
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1139 call assert_fails('call feedkeys("gg\<C-W>f", "xt")', 'E36:') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1140 endif |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1141 enew! |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1142 |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1143 " Tag commands (:stag, :stselect and :stjump) |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1144 call writefile(["!_TAG_FILE_ENCODING\tutf-8\t//", |
30051
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1145 \ "second\tXnorfile1\t2", |
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1146 \ "third\tXnorfile1\t3",], |
19748
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1147 \ 'Xtags') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1148 set tags=Xtags |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1149 call assert_fails(dir .. 'stag second', 'E36:') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1150 call assert_fails('call feedkeys(":" .. dir .. "stselect second\n1\n", "xt")', 'E36:') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1151 call assert_fails(dir .. 'stjump second', 'E36:') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1152 call assert_fails(dir .. 'ptag second', 'E36:') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1153 set tags& |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1154 call delete('Xtags') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1155 |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1156 " :isplit and :dsplit |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1157 call setline(1, ['#define FOO 1', 'FOO']) |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1158 normal 2G |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1159 call assert_fails(dir .. 'isplit FOO', 'E36:') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1160 call assert_fails(dir .. 'dsplit FOO', 'E36:') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1161 |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1162 " terminal |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1163 if has('terminal') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1164 call assert_fails(dir .. 'terminal', 'E36:') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1165 endif |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1166 |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1167 %bwipe! |
30051
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1168 call delete('Xnorfile1') |
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1169 call delete('Xnorfile2') |
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1170 call delete('Xnorfile3') |
19748
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1171 only |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1172 endfunc |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1173 |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1174 func Test_split_cmds_with_no_room() |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1175 call Run_noroom_for_newwindow_test('h') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1176 call Run_noroom_for_newwindow_test('v') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1177 endfunc |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1178 |
20120
16460964c304
patch 8.2.0615: regexp benchmark stest is old style
Bram Moolenaar <Bram@vim.org>
parents:
19932
diff
changeset
|
1179 " Test for various wincmd failures |
16460964c304
patch 8.2.0615: regexp benchmark stest is old style
Bram Moolenaar <Bram@vim.org>
parents:
19932
diff
changeset
|
1180 func Test_wincmd_fails() |
16460964c304
patch 8.2.0615: regexp benchmark stest is old style
Bram Moolenaar <Bram@vim.org>
parents:
19932
diff
changeset
|
1181 only! |
16460964c304
patch 8.2.0615: regexp benchmark stest is old style
Bram Moolenaar <Bram@vim.org>
parents:
19932
diff
changeset
|
1182 call assert_beeps("normal \<C-W>w") |
16460964c304
patch 8.2.0615: regexp benchmark stest is old style
Bram Moolenaar <Bram@vim.org>
parents:
19932
diff
changeset
|
1183 call assert_beeps("normal \<C-W>p") |
16460964c304
patch 8.2.0615: regexp benchmark stest is old style
Bram Moolenaar <Bram@vim.org>
parents:
19932
diff
changeset
|
1184 call assert_beeps("normal \<C-W>gk") |
16460964c304
patch 8.2.0615: regexp benchmark stest is old style
Bram Moolenaar <Bram@vim.org>
parents:
19932
diff
changeset
|
1185 call assert_beeps("normal \<C-W>r") |
16460964c304
patch 8.2.0615: regexp benchmark stest is old style
Bram Moolenaar <Bram@vim.org>
parents:
19932
diff
changeset
|
1186 call assert_beeps("normal \<C-W>K") |
16460964c304
patch 8.2.0615: regexp benchmark stest is old style
Bram Moolenaar <Bram@vim.org>
parents:
19932
diff
changeset
|
1187 call assert_beeps("normal \<C-W>H") |
16460964c304
patch 8.2.0615: regexp benchmark stest is old style
Bram Moolenaar <Bram@vim.org>
parents:
19932
diff
changeset
|
1188 call assert_beeps("normal \<C-W>2gt") |
16460964c304
patch 8.2.0615: regexp benchmark stest is old style
Bram Moolenaar <Bram@vim.org>
parents:
19932
diff
changeset
|
1189 endfunc |
16460964c304
patch 8.2.0615: regexp benchmark stest is old style
Bram Moolenaar <Bram@vim.org>
parents:
19932
diff
changeset
|
1190 |
22073
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1191 func Test_window_resize() |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1192 " Vertical :resize (absolute, relative, min and max size). |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1193 vsplit |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1194 vert resize 8 |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1195 call assert_equal(8, winwidth(0)) |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1196 vert resize +2 |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1197 call assert_equal(10, winwidth(0)) |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1198 vert resize -2 |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1199 call assert_equal(8, winwidth(0)) |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1200 vert resize |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1201 call assert_equal(&columns - 2, winwidth(0)) |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1202 vert resize 0 |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1203 call assert_equal(1, winwidth(0)) |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1204 vert resize 99999 |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1205 call assert_equal(&columns - 2, winwidth(0)) |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1206 |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1207 %bwipe! |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1208 |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1209 " Horizontal :resize (with absolute, relative size, min and max size). |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1210 split |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1211 resize 8 |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1212 call assert_equal(8, winheight(0)) |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1213 resize +2 |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1214 call assert_equal(10, winheight(0)) |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1215 resize -2 |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1216 call assert_equal(8, winheight(0)) |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1217 resize |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1218 call assert_equal(&lines - 4, winheight(0)) |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1219 resize 0 |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1220 call assert_equal(1, winheight(0)) |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1221 resize 99999 |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1222 call assert_equal(&lines - 4, winheight(0)) |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1223 |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1224 " :resize with explicit window number. |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1225 let other_winnr = winnr('j') |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1226 exe other_winnr .. 'resize 10' |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1227 call assert_equal(10, winheight(other_winnr)) |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1228 call assert_equal(&lines - 10 - 3, winheight(0)) |
22616
f773ac13c093
patch 8.2.1856: "2resize" uses size of current window
Bram Moolenaar <Bram@vim.org>
parents:
22087
diff
changeset
|
1229 exe other_winnr .. 'resize +1' |
f773ac13c093
patch 8.2.1856: "2resize" uses size of current window
Bram Moolenaar <Bram@vim.org>
parents:
22087
diff
changeset
|
1230 exe other_winnr .. 'resize +1' |
f773ac13c093
patch 8.2.1856: "2resize" uses size of current window
Bram Moolenaar <Bram@vim.org>
parents:
22087
diff
changeset
|
1231 call assert_equal(12, winheight(other_winnr)) |
f773ac13c093
patch 8.2.1856: "2resize" uses size of current window
Bram Moolenaar <Bram@vim.org>
parents:
22087
diff
changeset
|
1232 call assert_equal(&lines - 10 - 3 -2, winheight(0)) |
23402
65718283239b
patch 8.2.2244: crash when making the window width negative
Bram Moolenaar <Bram@vim.org>
parents:
22616
diff
changeset
|
1233 close |
65718283239b
patch 8.2.2244: crash when making the window width negative
Bram Moolenaar <Bram@vim.org>
parents:
22616
diff
changeset
|
1234 |
65718283239b
patch 8.2.2244: crash when making the window width negative
Bram Moolenaar <Bram@vim.org>
parents:
22616
diff
changeset
|
1235 vsplit |
65718283239b
patch 8.2.2244: crash when making the window width negative
Bram Moolenaar <Bram@vim.org>
parents:
22616
diff
changeset
|
1236 wincmd l |
65718283239b
patch 8.2.2244: crash when making the window width negative
Bram Moolenaar <Bram@vim.org>
parents:
22616
diff
changeset
|
1237 let other_winnr = winnr('h') |
65718283239b
patch 8.2.2244: crash when making the window width negative
Bram Moolenaar <Bram@vim.org>
parents:
22616
diff
changeset
|
1238 call assert_notequal(winnr(), other_winnr) |
23434
0fe2cdcff19b
patch 8.2.2260: window resize test fails in very wide terminal
Bram Moolenaar <Bram@vim.org>
parents:
23402
diff
changeset
|
1239 exe 'vert ' .. other_winnr .. 'resize -' .. &columns |
23402
65718283239b
patch 8.2.2244: crash when making the window width negative
Bram Moolenaar <Bram@vim.org>
parents:
22616
diff
changeset
|
1240 call assert_equal(0, winwidth(other_winnr)) |
22073
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1241 |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1242 %bwipe! |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1243 endfunc |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1244 |
21020
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1245 " Test for adjusting the window width when a window is closed with some |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1246 " windows using 'winfixwidth' |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1247 func Test_window_width_adjust() |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1248 only |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1249 " Three vertical windows. Windows 1 and 2 have 'winfixwidth' set and close |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1250 " window 2. |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1251 wincmd v |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1252 vert resize 10 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1253 set winfixwidth |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1254 wincmd v |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1255 set winfixwidth |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1256 wincmd c |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1257 call assert_inrange(10, 12, winwidth(1)) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1258 " Three vertical windows. Windows 2 and 3 have 'winfixwidth' set and close |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1259 " window 3. |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1260 only |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1261 set winfixwidth |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1262 wincmd v |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1263 vert resize 10 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1264 set winfixwidth |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1265 wincmd v |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1266 set nowinfixwidth |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1267 wincmd b |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1268 wincmd c |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1269 call assert_inrange(10, 12, winwidth(2)) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1270 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1271 new | only |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1272 endfunc |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1273 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1274 " Test for jumping to a vertical/horizontal neighbor window based on the |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1275 " current cursor position |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1276 func Test_window_goto_neightbor() |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1277 %bw! |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1278 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1279 " Vertical window movement |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1280 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1281 " create the following window layout: |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1282 " +--+--+ |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1283 " |w1|w3| |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1284 " +--+ | |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1285 " |w2| | |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1286 " +--+--+ |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1287 " |w4 | |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1288 " +-----+ |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1289 new |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1290 vsplit |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1291 split |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1292 " vertically jump from w4 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1293 wincmd b |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1294 call setline(1, repeat(' ', &columns)) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1295 call cursor(1, 1) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1296 wincmd k |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1297 call assert_equal(2, winnr()) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1298 wincmd b |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1299 call cursor(1, &columns) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1300 redraw! |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1301 wincmd k |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1302 call assert_equal(3, winnr()) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1303 %bw! |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1304 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1305 " create the following window layout: |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1306 " +--+--+--+ |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1307 " |w1|w2|w3| |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1308 " +--+--+--+ |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1309 " |w4 | |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1310 " +--------+ |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1311 new |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1312 vsplit |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1313 vsplit |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1314 wincmd b |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1315 call setline(1, repeat(' ', &columns)) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1316 call cursor(1, 1) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1317 wincmd k |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1318 call assert_equal(1, winnr()) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1319 wincmd b |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1320 call cursor(1, &columns / 2) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1321 redraw! |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1322 wincmd k |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1323 call assert_equal(2, winnr()) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1324 wincmd b |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1325 call cursor(1, &columns) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1326 redraw! |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1327 wincmd k |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1328 call assert_equal(3, winnr()) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1329 %bw! |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1330 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1331 " Horizontal window movement |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1332 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1333 " create the following window layout: |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1334 " +--+--+--+ |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1335 " |w1|w2|w4| |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1336 " +--+--+ | |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1337 " |w3 | | |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1338 " +-----+--+ |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1339 vsplit |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1340 split |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1341 vsplit |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1342 4wincmd l |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1343 call setline(1, repeat([' '], &lines)) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1344 call cursor(1, 1) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1345 redraw! |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1346 wincmd h |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1347 call assert_equal(2, winnr()) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1348 4wincmd l |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1349 call cursor(&lines, 1) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1350 redraw! |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1351 wincmd h |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1352 call assert_equal(3, winnr()) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1353 %bw! |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1354 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1355 " create the following window layout: |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1356 " +--+--+ |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1357 " |w1|w4| |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1358 " +--+ + |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1359 " |w2| | |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1360 " +--+ + |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1361 " |w3| | |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1362 " +--+--+ |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1363 vsplit |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1364 split |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1365 split |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1366 wincmd l |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1367 call setline(1, repeat([' '], &lines)) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1368 call cursor(1, 1) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1369 redraw! |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1370 wincmd h |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1371 call assert_equal(1, winnr()) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1372 wincmd l |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1373 call cursor(&lines / 2, 1) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1374 redraw! |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1375 wincmd h |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1376 call assert_equal(2, winnr()) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1377 wincmd l |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1378 call cursor(&lines, 1) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1379 redraw! |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1380 wincmd h |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1381 call assert_equal(3, winnr()) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1382 %bw! |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1383 endfunc |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1384 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1385 " Test for an autocmd closing the destination window when jumping from one |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1386 " window to another. |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1387 func Test_close_dest_window() |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1388 split |
30051
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1389 edit Xdstfile |
21020
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1390 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1391 " Test for BufLeave |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1392 augroup T1 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1393 au! |
30051
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1394 au BufLeave Xdstfile $wincmd c |
21020
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1395 augroup END |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1396 wincmd b |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1397 call assert_equal(1, winnr('$')) |
30051
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1398 call assert_equal('Xdstfile', @%) |
21020
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1399 augroup T1 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1400 au! |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1401 augroup END |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1402 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1403 " Test for WinLeave |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1404 new |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1405 wincmd p |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1406 augroup T1 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1407 au! |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1408 au WinLeave * 1wincmd c |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1409 augroup END |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1410 wincmd t |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1411 call assert_equal(1, winnr('$')) |
30051
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1412 call assert_equal('Xdstfile', @%) |
21020
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1413 augroup T1 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1414 au! |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1415 augroup END |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1416 augroup! T1 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1417 %bw! |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1418 endfunc |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1419 |
26468
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1420 func Test_window_minimal_size() |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1421 set winminwidth=0 winminheight=0 |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1422 |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1423 " check size is fixed vertically |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1424 new |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1425 call win_execute(win_getid(2), 'wincmd _') |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1426 call assert_equal(0, winheight(0)) |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1427 call feedkeys('0', 'tx') |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1428 call assert_equal(1, winheight(0)) |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1429 bwipe! |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1430 |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1431 " check size is fixed horizontally |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1432 vert new |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1433 call win_execute(win_getid(2), 'wincmd |') |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1434 call assert_equal(0, winwidth(0)) |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1435 call feedkeys('0', 'tx') |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1436 call assert_equal(1, winwidth(0)) |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1437 bwipe! |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1438 |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1439 if has('timers') |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1440 " check size is fixed in Insert mode |
26520
bea106f5fd26
patch 8.2.3789: Test_window_minimal_size can fail on a slow machine
Bram Moolenaar <Bram@vim.org>
parents:
26468
diff
changeset
|
1441 func s:CheckSize(timer) abort |
bea106f5fd26
patch 8.2.3789: Test_window_minimal_size can fail on a slow machine
Bram Moolenaar <Bram@vim.org>
parents:
26468
diff
changeset
|
1442 call win_execute(win_getid(2), 'wincmd _') |
bea106f5fd26
patch 8.2.3789: Test_window_minimal_size can fail on a slow machine
Bram Moolenaar <Bram@vim.org>
parents:
26468
diff
changeset
|
1443 call assert_equal(0, winheight(0)) |
bea106f5fd26
patch 8.2.3789: Test_window_minimal_size can fail on a slow machine
Bram Moolenaar <Bram@vim.org>
parents:
26468
diff
changeset
|
1444 call feedkeys(" \<Esc>", 't!') |
bea106f5fd26
patch 8.2.3789: Test_window_minimal_size can fail on a slow machine
Bram Moolenaar <Bram@vim.org>
parents:
26468
diff
changeset
|
1445 endfunc |
26468
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1446 new |
26520
bea106f5fd26
patch 8.2.3789: Test_window_minimal_size can fail on a slow machine
Bram Moolenaar <Bram@vim.org>
parents:
26468
diff
changeset
|
1447 call timer_start(100, function('s:CheckSize')) |
26468
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1448 call feedkeys('a', 'tx!') |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1449 call assert_equal(1, winheight(0)) |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1450 bwipe! |
26520
bea106f5fd26
patch 8.2.3789: Test_window_minimal_size can fail on a slow machine
Bram Moolenaar <Bram@vim.org>
parents:
26468
diff
changeset
|
1451 delfunc s:CheckSize |
26468
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1452 endif |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1453 |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1454 set winminwidth& winminheight& |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1455 endfunc |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1456 |
27047
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1457 func Test_win_move_separator() |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1458 edit a |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1459 leftabove vsplit b |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1460 let w = winwidth(0) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1461 " check win_move_separator from left window on left window |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1462 call assert_equal(1, winnr()) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1463 for offset in range(5) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1464 call assert_true(win_move_separator(0, offset)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1465 call assert_equal(w + offset, winwidth(0)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1466 call assert_true(0->win_move_separator(-offset)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1467 call assert_equal(w, winwidth(0)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1468 endfor |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1469 " check win_move_separator from right window on left window number |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1470 wincmd l |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1471 call assert_notequal(1, winnr()) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1472 for offset in range(5) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1473 call assert_true(1->win_move_separator(offset)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1474 call assert_equal(w + offset, winwidth(1)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1475 call assert_true(win_move_separator(1, -offset)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1476 call assert_equal(w, winwidth(1)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1477 endfor |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1478 " check win_move_separator from right window on left window ID |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1479 let id = win_getid(1) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1480 for offset in range(5) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1481 call assert_true(win_move_separator(id, offset)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1482 call assert_equal(w + offset, winwidth(id)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1483 call assert_true(id->win_move_separator(-offset)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1484 call assert_equal(w, winwidth(id)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1485 endfor |
27440
1118a65c9bc7
patch 8.2.4248: no proper test for moving the window separator
Bram Moolenaar <Bram@vim.org>
parents:
27047
diff
changeset
|
1486 " check win_move_separator from right window on right window is no-op |
1118a65c9bc7
patch 8.2.4248: no proper test for moving the window separator
Bram Moolenaar <Bram@vim.org>
parents:
27047
diff
changeset
|
1487 let w0 = winwidth(0) |
1118a65c9bc7
patch 8.2.4248: no proper test for moving the window separator
Bram Moolenaar <Bram@vim.org>
parents:
27047
diff
changeset
|
1488 call assert_true(win_move_separator(0, 1)) |
1118a65c9bc7
patch 8.2.4248: no proper test for moving the window separator
Bram Moolenaar <Bram@vim.org>
parents:
27047
diff
changeset
|
1489 call assert_equal(w0, winwidth(0)) |
1118a65c9bc7
patch 8.2.4248: no proper test for moving the window separator
Bram Moolenaar <Bram@vim.org>
parents:
27047
diff
changeset
|
1490 call assert_true(win_move_separator(0, -1)) |
1118a65c9bc7
patch 8.2.4248: no proper test for moving the window separator
Bram Moolenaar <Bram@vim.org>
parents:
27047
diff
changeset
|
1491 call assert_equal(w0, winwidth(0)) |
27047
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1492 " check that win_move_separator doesn't error with offsets beyond moving |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1493 " possibility |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1494 call assert_true(win_move_separator(id, 5000)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1495 call assert_true(winwidth(id) > w) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1496 call assert_true(win_move_separator(id, -5000)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1497 call assert_true(winwidth(id) < w) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1498 " check that win_move_separator returns false for an invalid window |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1499 wincmd = |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1500 let w = winwidth(0) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1501 call assert_false(win_move_separator(-1, 1)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1502 call assert_equal(w, winwidth(0)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1503 " check that win_move_separator returns false for a popup window |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1504 let id = popup_create(['hello', 'world'], {}) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1505 let w = winwidth(id) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1506 call assert_false(win_move_separator(id, 1)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1507 call assert_equal(w, winwidth(id)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1508 call popup_close(id) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1509 %bwipe! |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1510 endfunc |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1511 |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1512 func Test_win_move_statusline() |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1513 edit a |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1514 leftabove split b |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1515 let h = winheight(0) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1516 " check win_move_statusline from top window on top window |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1517 call assert_equal(1, winnr()) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1518 for offset in range(5) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1519 call assert_true(win_move_statusline(0, offset)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1520 call assert_equal(h + offset, winheight(0)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1521 call assert_true(0->win_move_statusline(-offset)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1522 call assert_equal(h, winheight(0)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1523 endfor |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1524 " check win_move_statusline from bottom window on top window number |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1525 wincmd j |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1526 call assert_notequal(1, winnr()) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1527 for offset in range(5) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1528 call assert_true(1->win_move_statusline(offset)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1529 call assert_equal(h + offset, winheight(1)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1530 call assert_true(win_move_statusline(1, -offset)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1531 call assert_equal(h, winheight(1)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1532 endfor |
27440
1118a65c9bc7
patch 8.2.4248: no proper test for moving the window separator
Bram Moolenaar <Bram@vim.org>
parents:
27047
diff
changeset
|
1533 " check win_move_statusline from bottom window on bottom window |
1118a65c9bc7
patch 8.2.4248: no proper test for moving the window separator
Bram Moolenaar <Bram@vim.org>
parents:
27047
diff
changeset
|
1534 let h0 = winheight(0) |
1118a65c9bc7
patch 8.2.4248: no proper test for moving the window separator
Bram Moolenaar <Bram@vim.org>
parents:
27047
diff
changeset
|
1535 for offset in range(5) |
1118a65c9bc7
patch 8.2.4248: no proper test for moving the window separator
Bram Moolenaar <Bram@vim.org>
parents:
27047
diff
changeset
|
1536 call assert_true(0->win_move_statusline(-offset)) |
1118a65c9bc7
patch 8.2.4248: no proper test for moving the window separator
Bram Moolenaar <Bram@vim.org>
parents:
27047
diff
changeset
|
1537 call assert_equal(h0 - offset, winheight(0)) |
1118a65c9bc7
patch 8.2.4248: no proper test for moving the window separator
Bram Moolenaar <Bram@vim.org>
parents:
27047
diff
changeset
|
1538 call assert_equal(1 + offset, &cmdheight) |
1118a65c9bc7
patch 8.2.4248: no proper test for moving the window separator
Bram Moolenaar <Bram@vim.org>
parents:
27047
diff
changeset
|
1539 call assert_true(win_move_statusline(0, offset)) |
1118a65c9bc7
patch 8.2.4248: no proper test for moving the window separator
Bram Moolenaar <Bram@vim.org>
parents:
27047
diff
changeset
|
1540 call assert_equal(h0, winheight(0)) |
1118a65c9bc7
patch 8.2.4248: no proper test for moving the window separator
Bram Moolenaar <Bram@vim.org>
parents:
27047
diff
changeset
|
1541 call assert_equal(1, &cmdheight) |
1118a65c9bc7
patch 8.2.4248: no proper test for moving the window separator
Bram Moolenaar <Bram@vim.org>
parents:
27047
diff
changeset
|
1542 endfor |
1118a65c9bc7
patch 8.2.4248: no proper test for moving the window separator
Bram Moolenaar <Bram@vim.org>
parents:
27047
diff
changeset
|
1543 call assert_true(win_move_statusline(0, 1)) |
30005
bb0e525e1393
patch 9.0.0340: the 'cmdheight' zero support causes too much trouble
Bram Moolenaar <Bram@vim.org>
parents:
29994
diff
changeset
|
1544 call assert_equal(h0, winheight(0)) |
bb0e525e1393
patch 9.0.0340: the 'cmdheight' zero support causes too much trouble
Bram Moolenaar <Bram@vim.org>
parents:
29994
diff
changeset
|
1545 call assert_equal(1, &cmdheight) |
27047
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1546 " check win_move_statusline from bottom window on top window ID |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1547 let id = win_getid(1) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1548 for offset in range(5) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1549 call assert_true(win_move_statusline(id, offset)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1550 call assert_equal(h + offset, winheight(id)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1551 call assert_true(id->win_move_statusline(-offset)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1552 call assert_equal(h, winheight(id)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1553 endfor |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1554 " check that win_move_statusline doesn't error with offsets beyond moving |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1555 " possibility |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1556 call assert_true(win_move_statusline(id, 5000)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1557 call assert_true(winheight(id) > h) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1558 call assert_true(win_move_statusline(id, -5000)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1559 call assert_true(winheight(id) < h) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1560 " check that win_move_statusline returns false for an invalid window |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1561 wincmd = |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1562 let h = winheight(0) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1563 call assert_false(win_move_statusline(-1, 1)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1564 call assert_equal(h, winheight(0)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1565 " check that win_move_statusline returns false for a popup window |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1566 let id = popup_create(['hello', 'world'], {}) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1567 let h = winheight(id) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1568 call assert_false(win_move_statusline(id, 1)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1569 call assert_equal(h, winheight(id)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1570 call popup_close(id) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1571 %bwipe! |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1572 endfunc |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1573 |
28289
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1574 " Test for window allocation failure |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1575 func Test_window_alloc_failure() |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1576 %bw! |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1577 |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1578 " test for creating a new window above current window |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1579 call test_alloc_fail(GetAllocId('newwin_wvars'), 0, 0) |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1580 call assert_fails('above new', 'E342:') |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1581 call assert_equal(1, winnr('$')) |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1582 |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1583 " test for creating a new window below current window |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1584 call test_alloc_fail(GetAllocId('newwin_wvars'), 0, 0) |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1585 call assert_fails('below new', 'E342:') |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1586 call assert_equal(1, winnr('$')) |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1587 |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1588 " test for popup window creation failure |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1589 call test_alloc_fail(GetAllocId('newwin_wvars'), 0, 0) |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1590 call assert_fails('call popup_create("Hello", {})', 'E342:') |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1591 call assert_equal([], popup_list()) |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1592 |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1593 call test_alloc_fail(GetAllocId('newwin_wvars'), 0, 0) |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1594 call assert_fails('split', 'E342:') |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1595 call assert_equal(1, winnr('$')) |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1596 |
30051
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1597 edit Xwaffile1 |
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1598 edit Xwaffile2 |
28289
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1599 call test_alloc_fail(GetAllocId('newwin_wvars'), 0, 0) |
30051
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1600 call assert_fails('sb Xwaffile1', 'E342:') |
28289
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1601 call assert_equal(1, winnr('$')) |
30051
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1602 call assert_equal('Xwaffile2', @%) |
28289
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1603 %bw! |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1604 |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1605 " FIXME: The following test crashes Vim |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1606 " test for new tabpage creation failure |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1607 " call test_alloc_fail(GetAllocId('newwin_wvars'), 0, 0) |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1608 " call assert_fails('tabnew', 'E342:') |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1609 " call assert_equal(1, tabpagenr('$')) |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1610 " call assert_equal(1, winnr('$')) |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1611 |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1612 " This test messes up the internal Vim window/frame information. So the |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1613 " Test_window_cmd_cmdwin_with_vsp() test fails after running this test. |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1614 " Open a new tab and close everything else to fix this issue. |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1615 tabnew |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1616 tabonly |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1617 endfunc |
26468
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1618 |
30134
0211a930d873
patch 9.0.0403: 'equalalways' may be off when 'laststatus' is zero
Bram Moolenaar <Bram@vim.org>
parents:
30051
diff
changeset
|
1619 func Test_win_equal_last_status() |
0211a930d873
patch 9.0.0403: 'equalalways' may be off when 'laststatus' is zero
Bram Moolenaar <Bram@vim.org>
parents:
30051
diff
changeset
|
1620 let save_lines = &lines |
0211a930d873
patch 9.0.0403: 'equalalways' may be off when 'laststatus' is zero
Bram Moolenaar <Bram@vim.org>
parents:
30051
diff
changeset
|
1621 set lines=20 |
0211a930d873
patch 9.0.0403: 'equalalways' may be off when 'laststatus' is zero
Bram Moolenaar <Bram@vim.org>
parents:
30051
diff
changeset
|
1622 set splitbelow |
0211a930d873
patch 9.0.0403: 'equalalways' may be off when 'laststatus' is zero
Bram Moolenaar <Bram@vim.org>
parents:
30051
diff
changeset
|
1623 set laststatus=0 |
0211a930d873
patch 9.0.0403: 'equalalways' may be off when 'laststatus' is zero
Bram Moolenaar <Bram@vim.org>
parents:
30051
diff
changeset
|
1624 |
0211a930d873
patch 9.0.0403: 'equalalways' may be off when 'laststatus' is zero
Bram Moolenaar <Bram@vim.org>
parents:
30051
diff
changeset
|
1625 split | split | quit |
0211a930d873
patch 9.0.0403: 'equalalways' may be off when 'laststatus' is zero
Bram Moolenaar <Bram@vim.org>
parents:
30051
diff
changeset
|
1626 call assert_equal(winheight(1), winheight(2)) |
0211a930d873
patch 9.0.0403: 'equalalways' may be off when 'laststatus' is zero
Bram Moolenaar <Bram@vim.org>
parents:
30051
diff
changeset
|
1627 |
0211a930d873
patch 9.0.0403: 'equalalways' may be off when 'laststatus' is zero
Bram Moolenaar <Bram@vim.org>
parents:
30051
diff
changeset
|
1628 let &lines = save_lines |
0211a930d873
patch 9.0.0403: 'equalalways' may be off when 'laststatus' is zero
Bram Moolenaar <Bram@vim.org>
parents:
30051
diff
changeset
|
1629 set splitbelow& |
0211a930d873
patch 9.0.0403: 'equalalways' may be off when 'laststatus' is zero
Bram Moolenaar <Bram@vim.org>
parents:
30051
diff
changeset
|
1630 set laststatus& |
0211a930d873
patch 9.0.0403: 'equalalways' may be off when 'laststatus' is zero
Bram Moolenaar <Bram@vim.org>
parents:
30051
diff
changeset
|
1631 endfunc |
0211a930d873
patch 9.0.0403: 'equalalways' may be off when 'laststatus' is zero
Bram Moolenaar <Bram@vim.org>
parents:
30051
diff
changeset
|
1632 |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1633 " Test "screen" and "cursor" values for 'splitkeep' with a sequence of |
30339
b5f67135fcb6
patch 9.0.0505: various problems with 'nosplitscroll'
Bram Moolenaar <Bram@vim.org>
parents:
30300
diff
changeset
|
1634 " split operations for various options: with and without a winbar, |
b5f67135fcb6
patch 9.0.0505: various problems with 'nosplitscroll'
Bram Moolenaar <Bram@vim.org>
parents:
30300
diff
changeset
|
1635 " tabline, for each possible value of 'laststatus', 'scrolloff', |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1636 " 'equalalways', and with the cursor at the top, middle and bottom. |
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1637 func Test_splitkeep_options() |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1638 " disallow window resizing |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1639 let save_WS = &t_WS |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1640 set t_WS= |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1641 |
30219
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1642 let gui = has("gui_running") |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1643 inoremap <expr> c "<cmd>copen<bar>wincmd k<CR>" |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1644 for run in range(0, 20) |
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1645 let &splitkeep = run > 10 ? 'topline' : 'screen' |
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1646 let &scrolloff = (!(run % 4) ? 0 : run) |
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1647 let &laststatus = (run % 3) |
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1648 let &splitbelow = (run % 3) |
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1649 let &equalalways = (run % 2) |
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1650 let wsb = (run % 2) && &splitbelow |
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1651 let tl = (gui ? 0 : ((run % 5) ? 1 : 0)) |
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1652 let pos = !(run % 3) ? 'H' : ((run % 2) ? 'M' : 'L') |
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1653 tabnew | tabonly! | redraw |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1654 execute (run % 5) ? 'tabnew' : '' |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1655 execute (run % 2) ? 'nnoremenu 1.10 WinBar.Test :echo' : '' |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1656 call setline(1, range(1, 256)) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1657 " No scroll for restore_snapshot |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1658 norm G |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1659 try |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1660 copen | close | colder |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1661 catch /E380/ |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1662 endtry |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1663 call assert_equal(257 - winheight(0), line("w0")) |
30239
91ecee475811
patch 9.0.0455: a few problems with 'splitscroll'
Bram Moolenaar <Bram@vim.org>
parents:
30219
diff
changeset
|
1664 |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1665 " No scroll for firstwin horizontal split |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1666 execute 'norm gg' . pos |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1667 split | redraw | wincmd k |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1668 call assert_equal(1, line("w0")) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1669 call assert_equal(&scroll, winheight(0) / 2) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1670 wincmd j |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1671 call assert_equal(&spk == 'topline' ? 1 : win_screenpos(0)[0] - tl - wsb, line("w0")) |
30219
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1672 |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1673 " No scroll when resizing windows |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1674 wincmd k | resize +2 | redraw |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1675 call assert_equal(1, line("w0")) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1676 wincmd j |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1677 call assert_equal(&spk == 'topline' ? 1 : win_screenpos(0)[0] - tl - wsb, line("w0")) |
30219
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1678 |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1679 " No scroll when dragging statusline |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1680 call win_move_statusline(1, -3) |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1681 call assert_equal(&spk == 'topline' ? 1 : win_screenpos(0)[0] - tl - wsb, line("w0")) |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1682 wincmd k |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1683 call assert_equal(1, line("w0")) |
30219
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1684 |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1685 " No scroll when changing shellsize |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1686 set lines+=2 |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1687 call assert_equal(1, line("w0")) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1688 wincmd j |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1689 call assert_equal(&spk == 'topline' ? 1 : win_screenpos(0)[0] - tl - wsb, line("w0")) |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1690 set lines-=2 |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1691 call assert_equal(&spk == 'topline' ? 1 : win_screenpos(0)[0] - tl - wsb, line("w0")) |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1692 wincmd k |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1693 call assert_equal(1, line("w0")) |
30219
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1694 |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1695 " No scroll when equalizing windows |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1696 wincmd = |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1697 call assert_equal(1, line("w0")) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1698 wincmd j |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1699 call assert_equal(&spk == 'topline' ? 1 : win_screenpos(0)[0] - tl - wsb, line("w0")) |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1700 wincmd k |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1701 call assert_equal(1, line("w0")) |
30219
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1702 |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1703 " No scroll in windows split multiple times |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1704 vsplit | split | 4wincmd w |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1705 call assert_equal(&spk == 'topline' ? 1 : win_screenpos(0)[0] - tl - wsb, line("w0")) |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1706 1wincmd w | quit | wincmd l | split |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1707 call assert_equal(&spk == 'topline' ? 1 : win_screenpos(0)[0] - tl - wsb, line("w0")) |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1708 wincmd j |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1709 call assert_equal(&spk == 'topline' ? 1 : win_screenpos(0)[0] - tl - wsb, line("w0")) |
30219
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1710 |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1711 " No scroll in small window |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1712 2wincmd w | only | 5split | wincmd k |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1713 call assert_equal(1, line("w0")) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1714 wincmd j |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1715 call assert_equal(&spk == 'topline' ? 1 : win_screenpos(0)[0] - tl - wsb, line("w0")) |
30219
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1716 |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1717 " No scroll for vertical split |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1718 quit | vsplit | wincmd l |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1719 call assert_equal(1, line("w0")) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1720 wincmd h |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1721 call assert_equal(1, line("w0")) |
30219
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1722 |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1723 " No scroll in windows split and quit multiple times |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1724 quit | redraw | split | split | quit | redraw |
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1725 call assert_equal(&spk == 'topline' ? 1 : win_screenpos(0)[0] - tl - wsb, line("w0")) |
30219
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1726 |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1727 " No scroll for new buffer |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1728 1wincmd w | only | copen | wincmd k |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1729 call assert_equal(1, line("w0")) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1730 only |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1731 call assert_equal(1, line("w0")) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1732 above copen | wincmd j |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1733 call assert_equal(&spk == 'topline' ? 1 : win_screenpos(0)[0] - tl, line("w0")) |
30219
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1734 |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1735 " No scroll when opening cmdwin, and no cursor move when closing cmdwin. |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1736 only | norm ggL |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1737 let curpos = getcurpos() |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1738 norm q: |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1739 call assert_equal(1, line("w0")) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1740 call assert_equal(curpos, getcurpos()) |
30219
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1741 |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1742 " Scroll when cursor becomes invalid in insert mode |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1743 norm Lic |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1744 call assert_equal(curpos, getcurpos()) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1745 |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1746 " No scroll when topline not equal to 1 |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1747 only | execute "norm gg5\<C-e>" | split | wincmd k |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1748 call assert_equal(6, line("w0")) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1749 wincmd j |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1750 call assert_equal(&spk == 'topline' ? 6 : 5 + win_screenpos(0)[0] - tl - wsb, line("w0")) |
30219
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1751 endfor |
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1752 |
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1753 tabnew | tabonly! | %bwipeout! |
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1754 iunmap c |
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1755 set scrolloff& |
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1756 set splitbelow& |
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1757 set laststatus& |
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1758 set equalalways& |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1759 set splitkeep& |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1760 let &t_WS = save_WS |
30219
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1761 endfunc |
30134
0211a930d873
patch 9.0.0403: 'equalalways' may be off when 'laststatus' is zero
Bram Moolenaar <Bram@vim.org>
parents:
30051
diff
changeset
|
1762 |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1763 function Test_splitkeep_cmdwin_cursor_position() |
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1764 set splitkeep=screen |
30271
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1765 call setline(1, range(&lines)) |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1766 |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1767 " No scroll when cursor is at near bottom of window and cusor position |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1768 " recompution (done by line('w0') in this test) happens while in cmdwin. |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1769 normal! G |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1770 let firstline = line('w0') |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1771 autocmd CmdwinEnter * ++once autocmd WinEnter * ++once call line('w0') |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1772 execute "normal! q:\<C-w>q" |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1773 redraw! |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1774 call assert_equal(firstline, line('w0')) |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1775 |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1776 " User script can change cursor position successfully while in cmdwin and it |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1777 " shouldn't be changed when closing cmdwin. |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1778 execute "normal! Gq:\<Cmd>call win_execute(winnr('#')->win_getid(), 'call cursor(1, 1)')\<CR>\<C-w>q" |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1779 call assert_equal(1, line('.')) |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1780 call assert_equal(1, col('.')) |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1781 |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1782 execute "normal! Gq:\<Cmd>autocmd WinEnter * ++once call cursor(1, 1)\<CR>\<C-w>q" |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1783 call assert_equal(1, line('.')) |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1784 call assert_equal(1, col('.')) |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1785 |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1786 %bwipeout! |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1787 set splitkeep& |
30271
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1788 endfunction |
30300
b9d07900b0b8
patch 9.0.0486: text scrolled with 'nosplitscroll', autocmd win and help
Bram Moolenaar <Bram@vim.org>
parents:
30285
diff
changeset
|
1789 |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1790 function Test_splitkeep_misc() |
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1791 set splitkeep=screen |
30339
b5f67135fcb6
patch 9.0.0505: various problems with 'nosplitscroll'
Bram Moolenaar <Bram@vim.org>
parents:
30300
diff
changeset
|
1792 set splitbelow |
30300
b9d07900b0b8
patch 9.0.0486: text scrolled with 'nosplitscroll', autocmd win and help
Bram Moolenaar <Bram@vim.org>
parents:
30285
diff
changeset
|
1793 |
b9d07900b0b8
patch 9.0.0486: text scrolled with 'nosplitscroll', autocmd win and help
Bram Moolenaar <Bram@vim.org>
parents:
30285
diff
changeset
|
1794 call setline(1, range(1, &lines)) |
b9d07900b0b8
patch 9.0.0486: text scrolled with 'nosplitscroll', autocmd win and help
Bram Moolenaar <Bram@vim.org>
parents:
30285
diff
changeset
|
1795 norm Gzz |
b9d07900b0b8
patch 9.0.0486: text scrolled with 'nosplitscroll', autocmd win and help
Bram Moolenaar <Bram@vim.org>
parents:
30285
diff
changeset
|
1796 let top = line('w0') |
30339
b5f67135fcb6
patch 9.0.0505: various problems with 'nosplitscroll'
Bram Moolenaar <Bram@vim.org>
parents:
30300
diff
changeset
|
1797 " No scroll when aucmd_win is opened |
30300
b9d07900b0b8
patch 9.0.0486: text scrolled with 'nosplitscroll', autocmd win and help
Bram Moolenaar <Bram@vim.org>
parents:
30285
diff
changeset
|
1798 call setbufvar(bufnr("test", 1) , '&buftype', 'nofile') |
b9d07900b0b8
patch 9.0.0486: text scrolled with 'nosplitscroll', autocmd win and help
Bram Moolenaar <Bram@vim.org>
parents:
30285
diff
changeset
|
1799 call assert_equal(top, line('w0')) |
30339
b5f67135fcb6
patch 9.0.0505: various problems with 'nosplitscroll'
Bram Moolenaar <Bram@vim.org>
parents:
30300
diff
changeset
|
1800 " No scroll when tab is changed/closed |
b5f67135fcb6
patch 9.0.0505: various problems with 'nosplitscroll'
Bram Moolenaar <Bram@vim.org>
parents:
30300
diff
changeset
|
1801 tab help | close |
b5f67135fcb6
patch 9.0.0505: various problems with 'nosplitscroll'
Bram Moolenaar <Bram@vim.org>
parents:
30300
diff
changeset
|
1802 call assert_equal(top, line('w0')) |
b5f67135fcb6
patch 9.0.0505: various problems with 'nosplitscroll'
Bram Moolenaar <Bram@vim.org>
parents:
30300
diff
changeset
|
1803 " No scroll when help is closed and buffer line count < window height |
b5f67135fcb6
patch 9.0.0505: various problems with 'nosplitscroll'
Bram Moolenaar <Bram@vim.org>
parents:
30300
diff
changeset
|
1804 norm ggdG |
b5f67135fcb6
patch 9.0.0505: various problems with 'nosplitscroll'
Bram Moolenaar <Bram@vim.org>
parents:
30300
diff
changeset
|
1805 call setline(1, range(1, &lines - 10)) |
30300
b9d07900b0b8
patch 9.0.0486: text scrolled with 'nosplitscroll', autocmd win and help
Bram Moolenaar <Bram@vim.org>
parents:
30285
diff
changeset
|
1806 norm G |
b9d07900b0b8
patch 9.0.0486: text scrolled with 'nosplitscroll', autocmd win and help
Bram Moolenaar <Bram@vim.org>
parents:
30285
diff
changeset
|
1807 let top = line('w0') |
b9d07900b0b8
patch 9.0.0486: text scrolled with 'nosplitscroll', autocmd win and help
Bram Moolenaar <Bram@vim.org>
parents:
30285
diff
changeset
|
1808 help | quit |
b9d07900b0b8
patch 9.0.0486: text scrolled with 'nosplitscroll', autocmd win and help
Bram Moolenaar <Bram@vim.org>
parents:
30285
diff
changeset
|
1809 call assert_equal(top, line('w0')) |
30665
fe0a18141c3c
patch 9.0.0667: ml_get error when 'splitkeep' is "screen"
Bram Moolenaar <Bram@vim.org>
parents:
30657
diff
changeset
|
1810 " No error when resizing window in autocmd and buffer length changed |
fe0a18141c3c
patch 9.0.0667: ml_get error when 'splitkeep' is "screen"
Bram Moolenaar <Bram@vim.org>
parents:
30657
diff
changeset
|
1811 autocmd FileType qf exe "resize" line('$') |
fe0a18141c3c
patch 9.0.0667: ml_get error when 'splitkeep' is "screen"
Bram Moolenaar <Bram@vim.org>
parents:
30657
diff
changeset
|
1812 cexpr getline(1, '$') |
fe0a18141c3c
patch 9.0.0667: ml_get error when 'splitkeep' is "screen"
Bram Moolenaar <Bram@vim.org>
parents:
30657
diff
changeset
|
1813 copen |
fe0a18141c3c
patch 9.0.0667: ml_get error when 'splitkeep' is "screen"
Bram Moolenaar <Bram@vim.org>
parents:
30657
diff
changeset
|
1814 wincmd p |
fe0a18141c3c
patch 9.0.0667: ml_get error when 'splitkeep' is "screen"
Bram Moolenaar <Bram@vim.org>
parents:
30657
diff
changeset
|
1815 norm dd |
fe0a18141c3c
patch 9.0.0667: ml_get error when 'splitkeep' is "screen"
Bram Moolenaar <Bram@vim.org>
parents:
30657
diff
changeset
|
1816 cexpr getline(1, '$') |
30300
b9d07900b0b8
patch 9.0.0486: text scrolled with 'nosplitscroll', autocmd win and help
Bram Moolenaar <Bram@vim.org>
parents:
30285
diff
changeset
|
1817 |
30339
b5f67135fcb6
patch 9.0.0505: various problems with 'nosplitscroll'
Bram Moolenaar <Bram@vim.org>
parents:
30300
diff
changeset
|
1818 %bwipeout! |
30300
b9d07900b0b8
patch 9.0.0486: text scrolled with 'nosplitscroll', autocmd win and help
Bram Moolenaar <Bram@vim.org>
parents:
30285
diff
changeset
|
1819 set splitbelow& |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1820 set splitkeep& |
30300
b9d07900b0b8
patch 9.0.0486: text scrolled with 'nosplitscroll', autocmd win and help
Bram Moolenaar <Bram@vim.org>
parents:
30285
diff
changeset
|
1821 endfunc |
b9d07900b0b8
patch 9.0.0486: text scrolled with 'nosplitscroll', autocmd win and help
Bram Moolenaar <Bram@vim.org>
parents:
30285
diff
changeset
|
1822 |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1823 function Test_splitkeep_callback() |
30439
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1824 CheckScreendump |
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1825 let lines =<< trim END |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1826 set splitkeep=screen |
30439
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1827 call setline(1, range(&lines)) |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1828 function C1(a, b) |
30439
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1829 split | wincmd p |
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1830 endfunction |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1831 function C2(a, b) |
30439
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1832 close | split |
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1833 endfunction |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1834 nn j <cmd>call job_start([&sh, &shcf, "true"], { 'exit_cb': 'C1' })<CR> |
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1835 nn t <cmd>call popup_create(term_start([&sh, &shcf, "true"], |
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1836 \ { 'hidden': 1, 'exit_cb': 'C2' }), {})<CR> |
30439
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1837 END |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1838 call writefile(lines, 'XTestSplitkeepCallback', 'D') |
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1839 let buf = RunVimInTerminal('-S XTestSplitkeepCallback', #{rows: 8}) |
30439
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1840 |
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1841 call term_sendkeys(buf, "j") |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1842 call VerifyScreenDump(buf, 'Test_splitkeep_callback_1', {}) |
30439
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1843 |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1844 call term_sendkeys(buf, ":quit\<CR>Ht") |
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1845 call VerifyScreenDump(buf, 'Test_splitkeep_callback_2', {}) |
30439
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1846 |
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1847 call term_sendkeys(buf, ":set sb\<CR>:quit\<CR>Gj") |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1848 call VerifyScreenDump(buf, 'Test_splitkeep_callback_3', {}) |
30439
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1849 |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1850 call term_sendkeys(buf, ":quit\<CR>Gt") |
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1851 call VerifyScreenDump(buf, 'Test_splitkeep_callback_4', {}) |
30439
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1852 endfunc |
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1853 |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1854 function Test_splitkeep_fold() |
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1855 CheckScreendump |
30535
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1856 |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1857 let lines =<< trim END |
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1858 set splitkeep=screen |
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1859 set foldmethod=marker |
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1860 set number |
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1861 let line = 1 |
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1862 for n in range(1, &lines) |
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1863 call setline(line, ['int FuncName() {/*{{{*/', 1, 2, 3, 4, 5, '}/*}}}*/', |
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1864 \ 'after fold']) |
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1865 let line += 8 |
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1866 endfor |
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1867 END |
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1868 call writefile(lines, 'XTestSplitkeepFold', 'D') |
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1869 let buf = RunVimInTerminal('-S XTestSplitkeepFold', #{rows: 10}) |
30535
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1870 |
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1871 call term_sendkeys(buf, "L:wincmd s\<CR>") |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1872 call VerifyScreenDump(buf, 'Test_splitkeep_fold_1', {}) |
30535
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1873 |
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1874 call term_sendkeys(buf, ":quit\<CR>") |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1875 call VerifyScreenDump(buf, 'Test_splitkeep_fold_2', {}) |
30535
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1876 |
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1877 call term_sendkeys(buf, "H:below split\<CR>") |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1878 call VerifyScreenDump(buf, 'Test_splitkeep_fold_3', {}) |
30535
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1879 |
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1880 call term_sendkeys(buf, ":wincmd k\<CR>:quit\<CR>") |
30624
f2f35161d75a
patch 9.0.0647: the 'splitscroll' option is not a good name
Bram Moolenaar <Bram@vim.org>
parents:
30535
diff
changeset
|
1881 call VerifyScreenDump(buf, 'Test_splitkeep_fold_4', {}) |
30535
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1882 endfunction |
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1883 |
9909
3ee84d270ea7
commit https://github.com/vim/vim/commit/9e4d8215d386100ab660d7d11e6620fd148b605e
Christian Brabandt <cb@256bit.org>
parents:
9349
diff
changeset
|
1884 " vim: shiftwidth=2 sts=2 expandtab |