| 56 | } |
| 57 | |
| 58 | func TestParserMultipleCalls(t *testing.T) { |
| 59 | p := NewParser() |
| 60 | in := `<tool_call>{"name":"a","arguments":{"x":1}}</tool_call><tool_call>{"name":"b","arguments":{"y":2}}</tool_call>` |
| 61 | _, calls := p.Feed(in) |
| 62 | if len(calls) != 2 { |
| 63 | t.Fatalf("calls = %d, want 2", len(calls)) |
| 64 | } |
| 65 | if calls[0].Function.Name != "a" || calls[1].Function.Name != "b" { |
| 66 | t.Fatalf("names = [%q, %q]", calls[0].Function.Name, calls[1].Function.Name) |
| 67 | } |
| 68 | } |
| 69 | |
| 70 | func TestParserNormalizesTagVariants(t *testing.T) { |
| 71 | cases := []struct { |