mirror of
https://github.com/denoland/deno.git
synced 2025-10-02 23:24:37 +00:00
refactor: replace deferred()
from std/async
with Promise.withResolvers()
(#21234)
Closes #21041 --------- Signed-off-by: Asher Gomez <ashersaupingomez@gmail.com>
This commit is contained in:
parent
0ffcb46e0f
commit
616354e76c
35 changed files with 952 additions and 1020 deletions
|
@ -2,7 +2,6 @@
|
|||
|
||||
import * as http2 from "node:http2";
|
||||
import * as net from "node:net";
|
||||
import { deferred } from "../../../test_util/std/async/deferred.ts";
|
||||
import { assertEquals } from "../../../test_util/std/testing/asserts.ts";
|
||||
|
||||
for (const url of ["http://127.0.0.1:4246", "https://127.0.0.1:4247"]) {
|
||||
|
@ -41,17 +40,17 @@ for (const url of ["http://127.0.0.1:4246", "https://127.0.0.1:4247"]) {
|
|||
});
|
||||
req.end();
|
||||
|
||||
const endPromise = deferred();
|
||||
const { promise, resolve } = Promise.withResolvers<void>();
|
||||
setTimeout(() => {
|
||||
try {
|
||||
client.close();
|
||||
} catch (_) {
|
||||
// pass
|
||||
}
|
||||
endPromise.resolve();
|
||||
resolve();
|
||||
}, 2000);
|
||||
|
||||
await endPromise;
|
||||
await promise;
|
||||
assertEquals(receivedHeaders, { ":status": 200 });
|
||||
assertEquals(receivedData, "hello world\n");
|
||||
|
||||
|
@ -67,14 +66,14 @@ Deno.test(`[node/http2 client createConnection]`, {
|
|||
ignore: Deno.build.os === "windows",
|
||||
}, async () => {
|
||||
const url = "http://127.0.0.1:4246";
|
||||
const createConnPromise = deferred();
|
||||
const createConnDeferred = Promise.withResolvers<void>();
|
||||
// Create a server to respond to the HTTP2 requests
|
||||
const client = http2.connect(url, {
|
||||
createConnection() {
|
||||
const socket = net.connect({ host: "127.0.0.1", port: 4246 });
|
||||
|
||||
socket.on("connect", () => {
|
||||
createConnPromise.resolve();
|
||||
createConnDeferred.resolve();
|
||||
});
|
||||
|
||||
return socket;
|
||||
|
@ -94,7 +93,7 @@ Deno.test(`[node/http2 client createConnection]`, {
|
|||
});
|
||||
req.end();
|
||||
|
||||
const endPromise = deferred();
|
||||
const endPromise = Promise.withResolvers<void>();
|
||||
setTimeout(() => {
|
||||
try {
|
||||
client.close();
|
||||
|
@ -104,8 +103,8 @@ Deno.test(`[node/http2 client createConnection]`, {
|
|||
endPromise.resolve();
|
||||
}, 2000);
|
||||
|
||||
await createConnPromise;
|
||||
await endPromise;
|
||||
await createConnDeferred.promise;
|
||||
await endPromise.promise;
|
||||
assertEquals(receivedData, "hello world\n");
|
||||
});
|
||||
|
||||
|
@ -127,11 +126,9 @@ Deno.test("[node/http2 server]", { sanitizeOps: false }, async () => {
|
|||
const stream = await new Promise<http2.ServerHttp2Stream>((resolve) =>
|
||||
session.on("stream", resolve)
|
||||
);
|
||||
const _headers = await new Promise((resolve) =>
|
||||
stream.on("headers", resolve)
|
||||
);
|
||||
const _data = await new Promise((resolve) => stream.on("data", resolve));
|
||||
const _end = await new Promise((resolve) => stream.on("end", resolve));
|
||||
await new Promise((resolve) => stream.on("headers", resolve));
|
||||
await new Promise((resolve) => stream.on("data", resolve));
|
||||
await new Promise((resolve) => stream.on("end", resolve));
|
||||
stream.respond();
|
||||
stream.end();
|
||||
const resp = await responsePromise;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue