Feat v0.5.0 realtime dialog (#30)
All checks were successful
All checks were successful
Co-authored-by: Jeffrey Smith <jasafpro@gmail.com> Co-committed-by: Jeffrey Smith <jasafpro@gmail.com>
This commit was merged in pull request #30.
This commit is contained in:
@@ -117,6 +117,12 @@ func TestRouteFor(t *testing.T) {
|
||||
// Extension lifecycle
|
||||
{"extension.loaded", DirLocal},
|
||||
{"extension.error", DirLocal},
|
||||
// Realtime (v0.5.0)
|
||||
{"realtime.chat.message", DirToClient},
|
||||
{"realtime.custom.event", DirToClient},
|
||||
// Room management (v0.5.0)
|
||||
{"room.subscribe", DirFromClient},
|
||||
{"room.unsubscribe", DirFromClient},
|
||||
}
|
||||
|
||||
for _, tt := range tests {
|
||||
@@ -190,6 +196,27 @@ func TestWaitFor_CleansUpSubscription(t *testing.T) {
|
||||
bus.Publish(Event{Label: "tool.result.cleanup", Payload: json.RawMessage(`{}`)})
|
||||
}
|
||||
|
||||
func TestRealtimeRouting(t *testing.T) {
|
||||
// realtime.* events should be sent to clients but not accepted from them
|
||||
if !ShouldSendToClient("realtime.chat.message") {
|
||||
t.Error("realtime.* should be sent to client")
|
||||
}
|
||||
if ShouldAcceptFromClient("realtime.chat.message") {
|
||||
t.Error("realtime.* should NOT be accepted from client")
|
||||
}
|
||||
|
||||
// room.subscribe/unsubscribe should be accepted from clients
|
||||
if !ShouldAcceptFromClient("room.subscribe") {
|
||||
t.Error("room.subscribe should be accepted from client")
|
||||
}
|
||||
if !ShouldAcceptFromClient("room.unsubscribe") {
|
||||
t.Error("room.unsubscribe should be accepted from client")
|
||||
}
|
||||
if ShouldSendToClient("room.subscribe") {
|
||||
t.Error("room.subscribe should NOT be sent to client")
|
||||
}
|
||||
}
|
||||
|
||||
func TestToolCallRouteToClient(t *testing.T) {
|
||||
if !ShouldSendToClient("tool.call.abc123") {
|
||||
t.Error("tool.call.* should be sent to client")
|
||||
|
||||
Reference in New Issue
Block a user