1" Test using the window ID. 2 3func Test_win_getid() 4 edit one 5 let id1 = win_getid() 6 split two 7 let id2 = win_getid() 8 split three 9 let id3 = win_getid() 10 tabnew 11 edit four 12 let id4 = win_getid() 13 split five 14 let id5 = win_getid() 15 tabnext 16 17 wincmd w 18 call assert_equal("two", expand("%")) 19 call assert_equal(id2, win_getid()) 20 let nr2 = winnr() 21 wincmd w 22 call assert_equal("one", expand("%")) 23 call assert_equal(id1, win_getid()) 24 let nr1 = winnr() 25 wincmd w 26 call assert_equal("three", expand("%")) 27 call assert_equal(id3, win_getid()) 28 let nr3 = winnr() 29 tabnext 30 call assert_equal("five", expand("%")) 31 call assert_equal(id5, win_getid()) 32 let nr5 = winnr() 33 wincmd w 34 call assert_equal("four", expand("%")) 35 call assert_equal(id4, win_getid()) 36 let nr4 = winnr() 37 tabnext 38 39 exe nr1 . "wincmd w" 40 call assert_equal(id1, win_getid()) 41 exe nr2 . "wincmd w" 42 call assert_equal(id2, win_getid()) 43 exe nr3 . "wincmd w" 44 call assert_equal(id3, win_getid()) 45 tabnext 46 exe nr4 . "wincmd w" 47 call assert_equal(id4, win_getid()) 48 exe nr5 . "wincmd w" 49 call assert_equal(id5, win_getid()) 50 51 call win_gotoid(id2) 52 call assert_equal("two", expand("%")) 53 call win_gotoid(id4) 54 call assert_equal("four", expand("%")) 55 call win_gotoid(id1) 56 call assert_equal("one", expand("%")) 57 call win_gotoid(id5) 58 call assert_equal("five", expand("%")) 59 60 call assert_equal(0, win_id2win(9999)) 61 call assert_equal(nr5, win_id2win(id5)) 62 call assert_equal(0, win_id2win(id1)) 63 tabnext 64 call assert_equal(nr1, win_id2win(id1)) 65 66 call assert_equal([0, 0], win_id2tabwin(9999)) 67 call assert_equal([1, nr2], win_id2tabwin(id2)) 68 call assert_equal([2, nr4], win_id2tabwin(id4)) 69 70 only! 71endfunc 72