package main import ( "encoding/json" "testing" ) func TestResizeMsgParsing(t *testing.T) { msg := `{"type":"resize","cols":120,"rows":40}` var r resizeMsg if err := json.Unmarshal([]byte(msg), &r); err != nil { t.Fatal(err) } if r.Type != "resize" { t.Errorf("got type %q", r.Type) } if r.Cols != 120 { t.Errorf("got cols %d", r.Cols) } if r.Rows != 40 { t.Errorf("got rows %d", r.Rows) } } func TestResizeMsgNotInput(t *testing.T) { // Regular keyboard input should NOT parse as resize msg := []byte("hello") var r resizeMsg err := json.Unmarshal(msg, &r) if err == nil && r.Type == "resize" { t.Error("regular input should not parse as resize") } }