@@ -507,13 +507,14 @@ func testBuffer(v *Nvim) func(*testing.T) {
507
507
func testWindow (v * Nvim ) func (* testing.T ) {
508
508
return func (t * testing.T ) {
509
509
t .Run ("Nvim" , func (t * testing.T ) {
510
- t .Parallel ()
511
-
512
510
wins , err := v .Windows ()
513
511
if err != nil {
514
512
t .Fatal (err )
515
513
}
516
514
if len (wins ) != 1 {
515
+ for i := 0 ; i < len (wins ); i ++ {
516
+ t .Logf ("wins[%d]: %v" , i , wins [i ])
517
+ }
517
518
t .Fatalf ("expected one win, found %d wins" , len (wins ))
518
519
}
519
520
if wins [0 ] == 0 {
@@ -533,14 +534,40 @@ func testWindow(v *Nvim) func(*testing.T) {
533
534
t .Fatalf ("got %s but want %s" , got , want )
534
535
}
535
536
536
- if err := v .SetCurrentWindow (win ); err != nil {
537
+ win , err = v .CurrentWindow ()
538
+ if err != nil {
539
+ t .Fatal (err )
540
+ }
541
+ if err := v .Command ("split" ); err != nil {
542
+ t .Fatal (err )
543
+ }
544
+ win2 , err := v .CurrentWindow ()
545
+ if err != nil {
546
+ t .Fatal (err )
547
+ }
548
+
549
+ if err := v .HideWindow (win2 ); err != nil {
550
+ t .Fatalf ("failed to HideWindow(%v)" , win2 )
551
+ }
552
+ wins2 , err := v .Windows ()
553
+ if err != nil {
537
554
t .Fatal (err )
538
555
}
556
+ if len (wins2 ) != 1 {
557
+ for i := 0 ; i < len (wins2 ); i ++ {
558
+ t .Logf ("wins[%d]: %v" , i , wins2 [i ])
559
+ }
560
+ t .Fatalf ("expected one win, found %d wins" , len (wins2 ))
561
+ }
562
+ if wins2 [0 ] == 0 {
563
+ t .Fatalf ("wins[0] == 0" )
564
+ }
565
+ if win != wins2 [0 ] {
566
+ t .Fatalf ("win2 is not wins2[0]: want: %v, win2: %v " , wins2 [0 ], win )
567
+ }
539
568
})
540
569
541
570
t .Run ("Batch" , func (t * testing.T ) {
542
- t .Parallel ()
543
-
544
571
b := v .NewBatch ()
545
572
546
573
var wins []Window
@@ -569,10 +596,36 @@ func testWindow(v *Nvim) func(*testing.T) {
569
596
t .Fatalf ("got %s but want %s" , got , want )
570
597
}
571
598
572
- b .SetCurrentWindow ( win )
599
+ b .CurrentWindow ( & win )
573
600
if err := b .Execute (); err != nil {
574
601
t .Fatal (err )
575
602
}
603
+
604
+ b .Command ("split" )
605
+ var win2 Window
606
+ b .CurrentWindow (& win2 )
607
+ if err := b .Execute (); err != nil {
608
+ t .Fatal (err )
609
+ }
610
+
611
+ b .HideWindow (win2 )
612
+ var wins2 []Window
613
+ b .Windows (& wins2 )
614
+ if err := b .Execute (); err != nil {
615
+ t .Fatal (err )
616
+ }
617
+ if len (wins2 ) != 1 {
618
+ for i := 0 ; i < len (wins2 ); i ++ {
619
+ t .Logf ("wins[%d]: %v" , i , wins2 [i ])
620
+ }
621
+ t .Fatalf ("expected one win, found %d wins" , len (wins2 ))
622
+ }
623
+ if wins2 [0 ] == 0 {
624
+ t .Fatalf ("wins[0] == 0" )
625
+ }
626
+ if win != wins2 [0 ] {
627
+ t .Fatalf ("win2 is not wins2[0]: want: %v, win2: %v " , wins2 [0 ], win )
628
+ }
576
629
})
577
630
}
578
631
}
0 commit comments