()
| 2774 | |
| 2775 | #[tokio::test(flavor = "multi_thread")] |
| 2776 | async fn test_memory_remember_and_recall() { |
| 2777 | use a3s_memory::InMemoryStore; |
| 2778 | let store = Arc::new(InMemoryStore::new()); |
| 2779 | let agent = Agent::from_config(test_config()).await.unwrap(); |
| 2780 | let opts = SessionOptions::new().with_memory(store); |
| 2781 | let session = agent |
| 2782 | .session("/tmp/test-ws-mem-recall", Some(opts)) |
| 2783 | .unwrap(); |
| 2784 | |
| 2785 | let memory = session.memory().unwrap(); |
| 2786 | memory |
| 2787 | .remember_success("write a file", &["write".to_string()], "done") |
| 2788 | .await |
| 2789 | .unwrap(); |
| 2790 | |
| 2791 | let results = memory.recall_similar("write", 5).await.unwrap(); |
| 2792 | assert!(!results.is_empty()); |
| 2793 | let stats = memory.stats().await.unwrap(); |
| 2794 | assert_eq!(stats.long_term_count, 1); |
| 2795 | } |
| 2796 | |
| 2797 | // ======================================================================== |
| 2798 | // Tool timeout tests |
nothing calls this directly
no test coverage detected