Spaces:
Running
Running
| import OpenClawProtocol | |
| import Foundation | |
| import Testing | |
| @testable import OpenClaw | |
| struct AgentEventStoreTests { | |
| func appendAndClear() { | |
| let store = AgentEventStore() | |
| #expect(store.events.isEmpty) | |
| store.append(ControlAgentEvent( | |
| runId: "run", | |
| seq: 1, | |
| stream: "test", | |
| ts: 0, | |
| data: [:] as [String: OpenClawProtocol.AnyCodable], | |
| summary: nil)) | |
| #expect(store.events.count == 1) | |
| store.clear() | |
| #expect(store.events.isEmpty) | |
| } | |
| func trimsToMaxEvents() { | |
| let store = AgentEventStore() | |
| for i in 1...401 { | |
| store.append(ControlAgentEvent( | |
| runId: "run", | |
| seq: i, | |
| stream: "test", | |
| ts: Double(i), | |
| data: [:] as [String: OpenClawProtocol.AnyCodable], | |
| summary: nil)) | |
| } | |
| #expect(store.events.count == 400) | |
| #expect(store.events.first?.seq == 2) | |
| #expect(store.events.last?.seq == 401) | |
| } | |
| } | |