MCPcopy Create free account
hub / github.com/astercloud/aster / TestPostgresService_AppendEvent

Function TestPostgresService_AppendEvent

pkg/session/postgres/service_test.go:136–202  ·  view source on GitHub ↗

TestPostgresService_AppendEvent 测试追加事件

(t *testing.T)

Source from the content-addressed store, hash-verified

134
135// TestPostgresService_AppendEvent 测试追加事件
136func TestPostgresService_AppendEvent(t *testing.T) {
137 service, cleanup := setupPostgresContainer(t)
138 defer cleanup()
139
140 ctx := context.Background()
141
142 sess, err := service.Create(ctx, &session.CreateRequest{
143 AppName: "test-app",
144 UserID: "user-001",
145 AgentID: "agent-001",
146 })
147 require.NoError(t, err)
148
149 t.Run("append basic event", func(t *testing.T) {
150 event := &session.Event{
151 ID: "evt-001",
152 Timestamp: time.Now(),
153 InvocationID: "inv-001",
154 AgentID: "agent-001",
155 Branch: "root",
156 Author: "user",
157 Content: types.Message{
158 Role: types.RoleUser,
159 Content: "Hello",
160 },
161 }
162
163 err := service.AppendEvent(ctx, sess.ID, event)
164 require.NoError(t, err)
165
166 // 验证事件已存储
167 events, err := service.GetEvents(ctx, sess.ID, nil)
168 require.NoError(t, err)
169 assert.Len(t, events, 1)
170 assert.Equal(t, event.ID, events[0].ID)
171 })
172
173 t.Run("append event with state delta", func(t *testing.T) {
174 event := &session.Event{
175 ID: "evt-002",
176 Timestamp: time.Now(),
177 InvocationID: "inv-001",
178 AgentID: "agent-001",
179 Branch: "root",
180 Author: "assistant",
181 Content: types.Message{
182 Role: types.RoleAssistant,
183 Content: "World",
184 },
185 Actions: session.EventActions{
186 StateDelta: map[string]any{
187 "session:counter": 42,
188 "session:name": "test",
189 },
190 },
191 }
192
193 err := service.AppendEvent(ctx, sess.ID, event)

Callers

nothing calls this directly

Calls 7

setupPostgresContainerFunction · 0.85
CreateMethod · 0.65
AppendEventMethod · 0.65
GetEventsMethod · 0.65
LenMethod · 0.65
GetStateMethod · 0.65
RunMethod · 0.45

Tested by

no test coverage detected