Skip to content

Commit 49aaa5a

Browse files
committed
nvim: add HideWindow testcase
Signed-off-by: Koichi Shiraishi <[email protected]>
1 parent a56d37b commit 49aaa5a

File tree

1 file changed

+59
-6
lines changed

1 file changed

+59
-6
lines changed

nvim/nvim_test.go

Lines changed: 59 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -507,13 +507,14 @@ func testBuffer(v *Nvim) func(*testing.T) {
507507
func testWindow(v *Nvim) func(*testing.T) {
508508
return func(t *testing.T) {
509509
t.Run("Nvim", func(t *testing.T) {
510-
t.Parallel()
511-
512510
wins, err := v.Windows()
513511
if err != nil {
514512
t.Fatal(err)
515513
}
516514
if len(wins) != 1 {
515+
for i := 0; i < len(wins); i++ {
516+
t.Logf("wins[%d]: %v", i, wins[i])
517+
}
517518
t.Fatalf("expected one win, found %d wins", len(wins))
518519
}
519520
if wins[0] == 0 {
@@ -533,14 +534,40 @@ func testWindow(v *Nvim) func(*testing.T) {
533534
t.Fatalf("got %s but want %s", got, want)
534535
}
535536

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 {
537554
t.Fatal(err)
538555
}
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+
}
539568
})
540569

541570
t.Run("Batch", func(t *testing.T) {
542-
t.Parallel()
543-
544571
b := v.NewBatch()
545572

546573
var wins []Window
@@ -569,10 +596,36 @@ func testWindow(v *Nvim) func(*testing.T) {
569596
t.Fatalf("got %s but want %s", got, want)
570597
}
571598

572-
b.SetCurrentWindow(win)
599+
b.CurrentWindow(&win)
573600
if err := b.Execute(); err != nil {
574601
t.Fatal(err)
575602
}
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+
}
576629
})
577630
}
578631
}

0 commit comments

Comments
 (0)