package parsekit import ( "strings" "testing" ) func TestSetResult_AcceptsVariousTypesAsInput(t *testing.T) { i := NewTokenAPI(strings.NewReader("Testing")) i.Result().SetRunes("string") AssertEqual(t, "string", string(i.Result().String()), "i.Result() with string input") i.Result().SetRunes([]rune("rune slice")) AssertEqual(t, "rune slice", string(i.Result().String()), "i.Result() with rune slice input") i.Result().SetRunes('X') AssertEqual(t, "X", string(i.Result().String()), "i.Result() with rune input") } func TestSetResult_PanicsOnUnhandledInput(t *testing.T) { AssertPanic(t, PanicT{ Function: func() { i := NewTokenAPI(strings.NewReader("Testing")) i.Result().SetRunes(1234567) }, Regexp: true, Expect: `parsekit\.TokenResult\.AddRunes\(\): unsupported type 'int' used at /.*/tokenresult_test.go:\d+`, }) }