MCPcopy
hub / github.com/docker/docker-agent / TestStoreAgentNameJSON

Function TestStoreAgentNameJSON

pkg/session/store_test.go:323–363  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

321}
322
323func TestStoreAgentNameJSON(t *testing.T) {
324 t.Parallel()
325
326 tempDB := filepath.Join(t.TempDir(), "test_store_json.db")
327
328 store, err := NewSQLiteSessionStore(t.Context(), tempDB)
329 require.NoError(t, err)
330 defer store.(*SQLiteSessionStore).Close()
331
332 agent1 := agent.New("my-agent", "test prompt")
333 agent2 := agent.New("another-agent", "another prompt")
334
335 session := &Session{
336 ID: "json-test-session",
337 Messages: []Item{
338 NewMessageItem(UserMessage("User input")),
339 NewMessageItem(NewAgentMessage(agent1.Name(), &chat.Message{
340 Role: chat.MessageRoleAssistant,
341 Content: "Response from my-agent",
342 })),
343 NewMessageItem(NewAgentMessage(agent2.Name(), &chat.Message{
344 Role: chat.MessageRoleAssistant,
345 Content: "Response from another-agent",
346 })),
347 },
348 CreatedAt: time.Now(),
349 }
350
351 // Store the session
352 err = store.AddSession(t.Context(), session)
353 require.NoError(t, err)
354
355 // Retrieve the session
356 retrievedSession, err := store.GetSession(t.Context(), "json-test-session")
357 require.NoError(t, err)
358 require.NotNil(t, retrievedSession)
359
360 assert.Empty(t, retrievedSession.Messages[0].Message.AgentName) // User message
361 assert.Equal(t, "my-agent", retrievedSession.Messages[1].Message.AgentName) // First agent
362 assert.Equal(t, "another-agent", retrievedSession.Messages[2].Message.AgentName) // Second agent
363}
364
365func TestNewSQLiteSessionStore_DirectoryNotWritable(t *testing.T) {
366 t.Parallel()

Callers

nothing calls this directly

Calls 11

AddSessionMethod · 0.95
GetSessionMethod · 0.95
NewFunction · 0.92
NewSQLiteSessionStoreFunction · 0.85
NewMessageItemFunction · 0.85
NewAgentMessageFunction · 0.85
ContextMethod · 0.80
NowMethod · 0.80
UserMessageFunction · 0.70
CloseMethod · 0.65
NameMethod · 0.65

Tested by

no test coverage detected