mirror of
https://github.com/denoland/deno.git
synced 2025-09-28 13:14:48 +00:00
refactor(std/example): Inconsistencies in the example tests (#7684)
This commit is contained in:
parent
ff785bc35a
commit
04836dc700
8 changed files with 27 additions and 27 deletions
43
std/examples/curl_test.ts
Normal file
43
std/examples/curl_test.ts
Normal file
|
@ -0,0 +1,43 @@
|
|||
// Copyright 2018-2020 the Deno authors. All rights reserved. MIT license.
|
||||
import { serve } from "../http/server.ts";
|
||||
import { assertStrictEquals } from "../testing/asserts.ts";
|
||||
import { dirname, fromFileUrl } from "../path/mod.ts";
|
||||
|
||||
const moduleDir = dirname(fromFileUrl(import.meta.url));
|
||||
|
||||
Deno.test({
|
||||
name: "[examples/curl] send a request to a specified url",
|
||||
fn: async () => {
|
||||
const server = serve({ port: 8081 });
|
||||
const serverPromise = (async (): Promise<void> => {
|
||||
for await (const req of server) {
|
||||
req.respond({ body: "Hello world" });
|
||||
}
|
||||
})();
|
||||
|
||||
const decoder = new TextDecoder();
|
||||
const process = Deno.run({
|
||||
cmd: [
|
||||
Deno.execPath(),
|
||||
"run",
|
||||
"--allow-net",
|
||||
"curl.ts",
|
||||
"http://localhost:8081",
|
||||
],
|
||||
cwd: moduleDir,
|
||||
stdout: "piped",
|
||||
});
|
||||
|
||||
try {
|
||||
const output = await process.output();
|
||||
const actual = decoder.decode(output).trim();
|
||||
const expected = "Hello world";
|
||||
|
||||
assertStrictEquals(actual, expected);
|
||||
} finally {
|
||||
server.close();
|
||||
process.close();
|
||||
await serverPromise;
|
||||
}
|
||||
},
|
||||
});
|
Loading…
Add table
Add a link
Reference in a new issue