diff options
author | Nayeem Rahman <muhammed.9939@gmail.com> | 2019-11-09 19:40:22 +0000 |
---|---|---|
committer | Ry Dahl <ry@tinyclouds.org> | 2019-11-09 14:40:22 -0500 |
commit | d586f119fa588a590a4ba2b74c8c210de710e3e7 (patch) | |
tree | 0a6a249c46c70c8326221ad79fb4e7fc739dc488 /std/http/server_test.ts | |
parent | 9889a28008eb9da1793bb9987bafe0b4952dd90a (diff) |
net: Check for closing status when iterating Listener (#3309)
std/http/server.ts: Use listener.next() instead of listener.accept()
Diffstat (limited to 'std/http/server_test.ts')
-rw-r--r-- | std/http/server_test.ts | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/std/http/server_test.ts b/std/http/server_test.ts index 5baeaa144..c8d4080ca 100644 --- a/std/http/server_test.ts +++ b/std/http/server_test.ts @@ -14,6 +14,7 @@ import { ServerRequest, writeResponse, readRequest, + serve, parseHTTPVersion } from "./server.ts"; import { delay } from "../util/async.ts"; @@ -580,4 +581,17 @@ test({ } }); +test({ + name: "[http] close server while iterating", + async fn(): Promise<void> { + const server = serve(":8123"); + const nextWhileClosing = server[Symbol.asyncIterator]().next(); + server.close(); + assertEquals(await nextWhileClosing, { value: undefined, done: true }); + + const nextAfterClosing = server[Symbol.asyncIterator]().next(); + assertEquals(await nextAfterClosing, { value: undefined, done: true }); + } +}); + runIfMain(import.meta); |