Skip to content

Commit 412f48f

Browse files
committed
一些整合
1 parent 601f19a commit 412f48f

9 files changed

Lines changed: 63 additions & 1 deletion

requirements-test.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ greenlet
1818
aiosqlite
1919
redis>=6.2.0
2020
langgraph
21-
google-genai>=1.24.0
21+
google-genai==2.10.0
2222

2323
# Test Tools
2424
rapidfuzz>=3.0.0
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# Delete session: create, add events, delete, verify gone
2+
{"op": "create_session", "app": "test_app", "user": "test_user", "session_id": "s11", "state": {}}
3+
{"op": "append_event", "session_id": "s11", "event": {"author": "user", "content": {"parts": [{"text": "This session will be deleted"}]}}}
4+
{"op": "append_event", "session_id": "s11", "event": {"author": "assistant", "content": {"parts": [{"text": "Understood, cleaning up"}]}}}
5+
{"op": "delete_session", "session_id": "s11"}
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
# Multiple independent sessions: verify isolation between sessions
2+
{"op": "create_session", "app": "test_app", "user": "test_user", "session_id": "s12_a", "state": {"key": "v1"}}
3+
{"op": "create_session", "app": "test_app", "user": "test_user", "session_id": "s12_b", "state": {"key": "v2"}}
4+
{"op": "append_event", "session_id": "s12_a", "event": {"author": "user", "content": {"parts": [{"text": "Event for session A"}]}}}
5+
{"op": "append_event", "session_id": "s12_b", "event": {"author": "user", "content": {"parts": [{"text": "Event for session B"}]}}}
6+
{"op": "get_session", "session_id": "s12_a"}
7+
{"op": "get_session", "session_id": "s12_b"}
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
# Memory store and search: store conversation context then search it
2+
{"op": "create_session", "app": "test_app", "user": "test_user", "session_id": "s13", "state": {}}
3+
{"op": "append_event", "session_id": "s13", "event": {"author": "user", "content": {"parts": [{"text": "My favorite color is blue"}]}}}
4+
{"op": "append_event", "session_id": "s13", "event": {"author": "assistant", "content": {"parts": [{"text": "I will remember that your favorite color is blue"}]}}}
5+
{"op": "store_memory", "session_id": "s13"}
6+
{"op": "search_memory", "key": "test_app/test_user", "query": "favorite color", "limit": 10}
7+
{"op": "get_session", "session_id": "s13"}
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# Nested state: session with nested dict state
2+
{"op": "create_session", "app": "test_app", "user": "test_user", "session_id": "s14", "state": {"nested": {"key": "value", "deep": {"a": 1, "b": 2}}}}
3+
{"op": "get_session", "session_id": "s14"}
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# State overwrite: state written via create_session should be retrievable
2+
{"op": "create_session", "app": "test_app", "user": "test_user", "session_id": "s15", "state": {"key": "initial", "version": 1}}
3+
{"op": "get_session", "session_id": "s15"}
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# Many events: stress test with 20 alternating user/assistant messages
2+
{"op": "create_session", "app": "test_app", "user": "test_user", "session_id": "s16", "state": {}}
3+
{"op": "append_event", "session_id": "s16", "event": {"author": "user", "content": {"parts": [{"text": "Message 0"}]}}}
4+
{"op": "append_event", "session_id": "s16", "event": {"author": "assistant", "content": {"parts": [{"text": "Message 1"}]}}}
5+
{"op": "append_event", "session_id": "s16", "event": {"author": "user", "content": {"parts": [{"text": "Message 2"}]}}}
6+
{"op": "append_event", "session_id": "s16", "event": {"author": "assistant", "content": {"parts": [{"text": "Message 3"}]}}}
7+
{"op": "append_event", "session_id": "s16", "event": {"author": "user", "content": {"parts": [{"text": "Message 4"}]}}}
8+
{"op": "append_event", "session_id": "s16", "event": {"author": "assistant", "content": {"parts": [{"text": "Message 5"}]}}}
9+
{"op": "append_event", "session_id": "s16", "event": {"author": "user", "content": {"parts": [{"text": "Message 6"}]}}}
10+
{"op": "append_event", "session_id": "s16", "event": {"author": "assistant", "content": {"parts": [{"text": "Message 7"}]}}}
11+
{"op": "append_event", "session_id": "s16", "event": {"author": "user", "content": {"parts": [{"text": "Message 8"}]}}}
12+
{"op": "append_event", "session_id": "s16", "event": {"author": "assistant", "content": {"parts": [{"text": "Message 9"}]}}}
13+
{"op": "append_event", "session_id": "s16", "event": {"author": "user", "content": {"parts": [{"text": "Message 10"}]}}}
14+
{"op": "append_event", "session_id": "s16", "event": {"author": "assistant", "content": {"parts": [{"text": "Message 11"}]}}}
15+
{"op": "append_event", "session_id": "s16", "event": {"author": "user", "content": {"parts": [{"text": "Message 12"}]}}}
16+
{"op": "append_event", "session_id": "s16", "event": {"author": "assistant", "content": {"parts": [{"text": "Message 13"}]}}}
17+
{"op": "append_event", "session_id": "s16", "event": {"author": "user", "content": {"parts": [{"text": "Message 14"}]}}}
18+
{"op": "append_event", "session_id": "s16", "event": {"author": "assistant", "content": {"parts": [{"text": "Message 15"}]}}}
19+
{"op": "append_event", "session_id": "s16", "event": {"author": "user", "content": {"parts": [{"text": "Message 16"}]}}}
20+
{"op": "append_event", "session_id": "s16", "event": {"author": "assistant", "content": {"parts": [{"text": "Message 17"}]}}}
21+
{"op": "append_event", "session_id": "s16", "event": {"author": "user", "content": {"parts": [{"text": "Message 18"}]}}}
22+
{"op": "append_event", "session_id": "s16", "event": {"author": "assistant", "content": {"parts": [{"text": "Message 19"}]}}}
23+
{"op": "get_session", "session_id": "s16"}
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# Update session before get: update session then verify state is preserved
2+
{"op": "create_session", "app": "test_app", "user": "test_user", "session_id": "s17", "state": {}}
3+
{"op": "append_event", "session_id": "s17", "event": {"author": "user", "content": {"parts": [{"text": "Hello, please update"}]}}}
4+
{"op": "update_session", "session_id": "s17"}
5+
{"op": "get_session", "session_id": "s17"}
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
# Full workflow: create, add events, store memory, search memory, update, get
2+
{"op": "create_session", "app": "test_app", "user": "test_user", "session_id": "s18", "state": {"topic": "testing"}}
3+
{"op": "append_event", "session_id": "s18", "event": {"author": "user", "content": {"parts": [{"text": "Hello, I need help with testing"}]}}}
4+
{"op": "append_event", "session_id": "s18", "event": {"author": "assistant", "content": {"parts": [{"text": "I can help you with testing. What kind of tests do you need?"}]}}}
5+
{"op": "append_event", "session_id": "s18", "event": {"author": "user", "content": {"parts": [{"text": "Unit tests for my Python module"}]}}}
6+
{"op": "store_memory", "session_id": "s18"}
7+
{"op": "search_memory", "key": "test_app/test_user", "query": "testing", "limit": 10}
8+
{"op": "update_session", "session_id": "s18"}
9+
{"op": "get_session", "session_id": "s18"}

0 commit comments

Comments
 (0)