X-Git-Url: http://git.giacomolli.uk/onechat/blobdiff_plain/2daf91497c2cc70d7156f7c0d99b1451933a818a..855a45e6448537c3eed1ad6ec7f1ca9d6caf91fc:/memory_test.go diff --git a/memory_test.go b/memory_test.go index ee932d1..202d4da 100644 --- a/memory_test.go +++ b/memory_test.go @@ -3,7 +3,6 @@ package main import ( "context" "fmt" - "log" "maps" "os" "path/filepath" @@ -23,6 +22,7 @@ func TestMemoryRestartLoadsTheSameView(t *testing.T) { memory.chat.high = 200 memory.chat.low = 100 + memory.cview.high = 80 memory.cview.low = 40 for n := range 100 { @@ -89,6 +89,7 @@ func TestMemoryKeepsTheCompactionViewCoarser(t *testing.T) { memory.chat.high = 200 memory.chat.low = 100 + memory.cview.high = 80 memory.cview.low = 40 for n := range 64 { @@ -124,6 +125,7 @@ func TestMemoryRunsAtMostEightBuilds(t *testing.T) { } memory.mutex.Lock() + running := slices.Collect(maps.Keys(memory.queue.running)) memory.mutex.Unlock() slices.SortFunc(running, func(a, b NodeKey) int { @@ -179,8 +181,9 @@ func TestMemorySettleWaitsForThePendingLines(t *testing.T) { func TestMemorySettleFailsWhileABuildFailed(t *testing.T) { summarizer := newFakeSummarizer() summarizer.SetFailing(true) + logs := &SyncBuffer{} - memory, err := openMemory(t.Context(), t.TempDir(), newTestClock().Now, summarizer, log.New(logs, "", 0)) + memory, err := openMemory(t.Context(), t.TempDir(), newTestClock().Now, summarizer, daemonTestLogger(logs)) require.NoError(t, err) defer func() { @@ -190,9 +193,10 @@ func TestMemorySettleFailsWhileABuildFailed(t *testing.T) { _, err = memory.Append("echo", memoryLongText(0)) require.NoError(t, err) require.ErrorIs(t, memory.Settle(t.Context()), errMemoryUnsettled) - require.Equal(t, "a summary of the chat failed, and it is tried again at the next message: node (0, 0): fake failure\n", logs.String()) + require.Equal(t, "<4>summary failed level=0 index=0: fake failure\n", logs.String()) summarizer.SetFailing(false) + _, err = memory.Append("user", "retry") require.NoError(t, err) require.NoError(t, memory.Settle(t.Context())) @@ -220,6 +224,7 @@ func TestMemorySettleEndsWithItsContext(t *testing.T) { func TestMemoryStartsALeafAfterFewerThanEightUnbuilt(t *testing.T) { summarizer := newFakeSummarizer() summarizer.SetFailing(true) + memory, err := openMemory(t.Context(), t.TempDir(), newTestClock().Now, summarizer, discardLog()) require.NoError(t, err) @@ -233,6 +238,7 @@ func TestMemoryStartsALeafAfterFewerThanEightUnbuilt(t *testing.T) { } require.NoError(t, memory.Wait(t.Context())) + for _, task := range summarizer.Tasks() { require.Less(t, task.Index, 8) } @@ -278,6 +284,7 @@ func TestMemoryRestartRestoresTheQueue(t *testing.T) { clock := newTestClock() summarizer := newFakeSummarizer() summarizer.SetFailing(true) + memory, err := openMemory(t.Context(), root, clock.Now, summarizer, discardLog()) require.NoError(t, err) @@ -320,6 +327,7 @@ func TestMemoryBuildsFreeParents(t *testing.T) { func TestMemoryKeepsALongMessageOutOfTheView(t *testing.T) { summarizer := newFakeSummarizer() summarizer.SetFailing(true) + memory, err := openMemory(t.Context(), t.TempDir(), newTestClock().Now, summarizer, discardLog()) require.NoError(t, err)