Skip to content

Commit b8e3af6

Browse files
committed
test(std/watch): add tests for closing streams
1 parent 8fc4919 commit b8e3af6

File tree

1 file changed

+18
-0
lines changed

1 file changed

+18
-0
lines changed

std/watch_test.ts

+18
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,15 @@ describe("watch - websockets", () => {
4141
assertEquals(value.type, "message");
4242
assertEquals(value.data, "test");
4343
});
44+
45+
it("should remove the event listener when the stream is canceled", async () => {
46+
const stream = watch(ws)("message");
47+
const reader = stream.getReader();
48+
reader.cancel();
49+
ws.dispatchEvent(new MessageEvent("message", { data: "test" }));
50+
const { done } = await reader.read();
51+
assertEquals(done, true);
52+
});
4453
});
4554

4655
describe("watch - relays", () => {
@@ -85,4 +94,13 @@ describe("watch - relays", () => {
8594
assertEquals(value.type, "receive");
8695
assertEquals(value.data, ["NOTICE", "test"]);
8796
});
97+
98+
it("should remove the event listener when the stream is canceled", async () => {
99+
const stream = watch(relay)("receive");
100+
const reader = stream.getReader();
101+
reader.cancel();
102+
relay.dispatch("receive", ["NOTICE", "test"]);
103+
const { done } = await reader.read();
104+
assertEquals(done, true);
105+
});
88106
});

0 commit comments

Comments
 (0)