X-Git-Url: https://git.giacomolli.uk/onechat/blobdiff_plain/790279faf0fda789d93a75f6f5996e65d5de4a18..c781f79f3c8cb9a7577ee1574d196988da2719b3:/subagent_run_test.go diff --git a/subagent_run_test.go b/subagent_run_test.go index c5ad299..efd387c 100644 --- a/subagent_run_test.go +++ b/subagent_run_test.go @@ -29,7 +29,8 @@ func TestSpawnRunsASubagentInTheBackground(t *testing.T) { last := subagentTestLastItem(call) switch { case subagentTestCall(call) && last["type"] == "function_call_output": - // The report comes after the reply of the turn of the spawn. + // The report comes after the reply of the turn of the + // spawn. test.events.WaitFor(t, "reply", 1) modelWriteEvents(w, modelCompletedEvent([]any{modelMessageItem("There are 3 files.")}, 100, 0, 5)) case subagentTestCall(call): @@ -63,6 +64,7 @@ func TestSpawnRunsASubagentInTheBackground(t *testing.T) { "work: " + report, "reply: Noted.", }, test.Log(t)) + require.Equal(t, Event{ Kind: "work", ID: 4, @@ -70,6 +72,7 @@ func TestSpawnRunsASubagentInTheBackground(t *testing.T) { Source: name, Status: subagentFinished, }, test.events.LastEvent("work")) + require.Equal(t, "<6>subagent started name="+name+"\n<6>subagent done name="+name+" after=0s\n", test.logs.String()) var first, second *ModelFakeCall @@ -197,6 +200,7 @@ func TestFullContextGivesAFailedReport(t *testing.T) { "work: [" + name + "]\nfailed: create model response: model call: HTTP 400: " + subagentTestFullContext + "\n\nFull chat: zoom(\"" + name + "\")", "reply: It failed.", }, test.Log(t)) + require.Equal(t, subagentFailed, test.events.LastEvent("work").Status) require.Equal(t, "<6>subagent started name="+name+"\n<3>subagent failed name="+name+" after=0s: create model response: model call: HTTP 400: "+subagentTestFullContext+"\n", test.logs.String()) } @@ -384,6 +388,7 @@ func TestStopEndsASubagentAndItsCommand(t *testing.T) { "note: Stopped by the user: " + name + ".", "work: " + subagentReport(name, []string{"stopped"}), }, test.Log(t)) + require.Equal(t, subagentStopped, test.events.LastEvent("work").Status) require.Equal(t, "<6>subagent started name="+name+"\n<6>subagent stopped name="+name+" after=0s\n", test.logs.String()) @@ -517,6 +522,7 @@ func TestRestartReportsASubagentThatCannotGoOn(t *testing.T) { "work: " + subagentReport("BlueFox", []string{"failed: no agent BlueFox"}), "reply: a line", }, subagentTestChat(t, memory)) + require.Equal(t, subagentFailed, events.LastEvent("work").Status) require.Equal(t, "<3>subagent lost at restart name=BlueFox: no agent BlueFox\n", logs.String())