MCPcopy Index your code
hub / github.com/docker/docker-agent / TestUpdateMemory

Function TestUpdateMemory

pkg/memory/database/sqlite/sqlite_test.go:237–284  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

235}
236
237func TestUpdateMemory(t *testing.T) {
238 t.Parallel()
239 db := setupTestDB(t)
240 ctx := t.Context()
241
242 memory := database.UserMemory{
243 ID: "upd-1",
244 CreatedAt: time.Now().Format(time.RFC3339),
245 Memory: "Original content",
246 Category: "fact",
247 }
248 require.NoError(t, db.AddMemory(ctx, memory))
249
250 t.Run("update content and category", func(t *testing.T) {
251 err := db.UpdateMemory(ctx, database.UserMemory{
252 ID: "upd-1",
253 Memory: "Updated content",
254 Category: "decision",
255 })
256 require.NoError(t, err)
257
258 memories, err := db.GetMemories(ctx)
259 require.NoError(t, err)
260 require.Len(t, memories, 1)
261 assert.Equal(t, "Updated content", memories[0].Memory)
262 assert.Equal(t, "decision", memories[0].Category)
263 // CreatedAt should be preserved
264 assert.Equal(t, memory.CreatedAt, memories[0].CreatedAt)
265 })
266
267 t.Run("not found", func(t *testing.T) {
268 err := db.UpdateMemory(ctx, database.UserMemory{
269 ID: "nonexistent",
270 Memory: "something",
271 })
272 require.Error(t, err)
273 assert.ErrorIs(t, err, database.ErrMemoryNotFound)
274 })
275
276 t.Run("empty ID", func(t *testing.T) {
277 err := db.UpdateMemory(ctx, database.UserMemory{
278 ID: "",
279 Memory: "something",
280 })
281 require.Error(t, err)
282 assert.ErrorIs(t, err, database.ErrEmptyID)
283 })
284}
285
286func TestMigrationAddsCategory(t *testing.T) {
287 t.Parallel()

Callers

nothing calls this directly

Calls 9

setupTestDBFunction · 0.85
ContextMethod · 0.80
NowMethod · 0.80
AddMemoryMethod · 0.65
RunMethod · 0.65
UpdateMemoryMethod · 0.65
GetMemoriesMethod · 0.65
LenMethod · 0.65
ErrorMethod · 0.45

Tested by

no test coverage detected