summaryrefslogtreecommitdiff
path: root/tests/unit_node/http_test.ts
diff options
context:
space:
mode:
Diffstat (limited to 'tests/unit_node/http_test.ts')
-rw-r--r--tests/unit_node/http_test.ts11
1 files changed, 7 insertions, 4 deletions
diff --git a/tests/unit_node/http_test.ts b/tests/unit_node/http_test.ts
index c9a1ec3ea..d4cf5941f 100644
--- a/tests/unit_node/http_test.ts
+++ b/tests/unit_node/http_test.ts
@@ -1325,9 +1325,10 @@ Deno.test("[node/http] http.request() post streaming body works", async () => {
}
});
- const deferred = Promise.withResolvers<void>();
+ const responseEnded = Promise.withResolvers<void>();
+ const fileClosed = Promise.withResolvers<void>();
const timeout = setTimeout(() => {
- deferred.reject(new Error("timeout"));
+ responseEnded.reject(new Error("timeout"));
}, 5000);
server.listen(0, () => {
// deno-lint-ignore no-explicit-any
@@ -1359,7 +1360,7 @@ Deno.test("[node/http] http.request() post streaming body works", async () => {
const response = JSON.parse(responseBody);
assertEquals(res.statusCode, 200);
assertEquals(response.bytes, contentLength);
- deferred.resolve();
+ responseEnded.resolve();
});
});
@@ -1369,8 +1370,10 @@ Deno.test("[node/http] http.request() post streaming body works", async () => {
const readStream = fs.createReadStream(filePath);
readStream.pipe(req);
+ readStream.on("close", fileClosed.resolve);
});
- await deferred.promise;
+ await responseEnded.promise;
+ await fileClosed.promise;
assertEquals(server.listening, true);
server.close();
clearTimeout(timeout);