MCPcopy
hub / github.com/mum4k/termdash / TestDrawHandlesTerminalResize

Function TestDrawHandlesTerminalResize

container/draw_test.go:1026–1185  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

1024}
1025
1026func TestDrawHandlesTerminalResize(t *testing.T) {
1027 termSize := image.Point{60, 10}
1028 got, err := faketerm.New(termSize)
1029 if err != nil {
1030 t.Errorf("faketerm.New => unexpected error: %v", err)
1031 }
1032
1033 cont, err := New(
1034 got,
1035 SplitVertical(
1036 Left(
1037 SplitHorizontal(
1038 Top(
1039 PlaceWidget(fakewidget.New(widgetapi.Options{})),
1040 ),
1041 Bottom(
1042 PlaceWidget(fakewidget.New(widgetapi.Options{})),
1043 ),
1044 ),
1045 ),
1046 Right(
1047 SplitVertical(
1048 Left(
1049 PlaceWidget(fakewidget.New(widgetapi.Options{})),
1050 ),
1051 Right(
1052 PlaceWidget(fakewidget.New(widgetapi.Options{})),
1053 ),
1054 ),
1055 ),
1056 ),
1057 )
1058 if err != nil {
1059 t.Fatalf("New => unexpected error: %v", err)
1060 }
1061
1062 // The following tests aren't hermetic, they all access the same container
1063 // and fake terminal in order to retain state between resizes.
1064 tests := []struct {
1065 desc string
1066 resize *image.Point // if not nil, the fake terminal will be resized.
1067 want func(size image.Point) *faketerm.Terminal
1068 }{
1069 {
1070 desc: "handles the initial draw request",
1071 want: func(size image.Point) *faketerm.Terminal {
1072 ft := faketerm.MustNew(size)
1073
1074 fakewidget.MustDraw(
1075 ft,
1076 testcanvas.MustNew(image.Rect(0, 0, 30, 5)),
1077 &widgetapi.Meta{},
1078 widgetapi.Options{},
1079 )
1080 fakewidget.MustDraw(
1081 ft,
1082 testcanvas.MustNew(image.Rect(0, 5, 30, 10)),
1083 &widgetapi.Meta{},

Callers

nothing calls this directly

Calls 15

NewFunction · 0.92
NewFunction · 0.92
MustNewFunction · 0.92
MustDrawFunction · 0.92
MustNewFunction · 0.92
DiffFunction · 0.92
SplitVerticalFunction · 0.85
LeftFunction · 0.85
SplitHorizontalFunction · 0.85
TopFunction · 0.85
PlaceWidgetFunction · 0.85
BottomFunction · 0.85

Tested by

no test coverage detected