From 3e1f98236f2a0d1db331caf0a246660fcd104deb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bartek=20Iwa=C5=84czuk?= Date: Mon, 5 Aug 2024 22:19:09 +0100 Subject: feat: Add Deno.ServeDefaultExport type (#24879) Closes https://github.com/denoland/deno/issues/23725 --- tests/specs/serve/type_check/__test__.jsonc | 6 ++++++ tests/specs/serve/type_check/main.out | 5 +++++ tests/specs/serve/type_check/main.ts | 4 ++++ tests/specs/serve/type_check2/__test__.jsonc | 6 ++++++ tests/specs/serve/type_check2/main.out | 5 +++++ tests/specs/serve/type_check2/main.ts | 6 ++++++ 6 files changed, 32 insertions(+) create mode 100644 tests/specs/serve/type_check/__test__.jsonc create mode 100644 tests/specs/serve/type_check/main.out create mode 100644 tests/specs/serve/type_check/main.ts create mode 100644 tests/specs/serve/type_check2/__test__.jsonc create mode 100644 tests/specs/serve/type_check2/main.out create mode 100644 tests/specs/serve/type_check2/main.ts (limited to 'tests') diff --git a/tests/specs/serve/type_check/__test__.jsonc b/tests/specs/serve/type_check/__test__.jsonc new file mode 100644 index 000000000..813eafc12 --- /dev/null +++ b/tests/specs/serve/type_check/__test__.jsonc @@ -0,0 +1,6 @@ +{ + "args": "serve --check --port 12345 main.ts", + "output": "main.out", + "tempDir": true, + "exitCode": 1 +} diff --git a/tests/specs/serve/type_check/main.out b/tests/specs/serve/type_check/main.out new file mode 100644 index 000000000..4613ef265 --- /dev/null +++ b/tests/specs/serve/type_check/main.out @@ -0,0 +1,5 @@ +Check [WILDCARD] +error: TS2353 [ERROR]: Object literal may only specify known properties, and 'bad' does not exist in type 'ServeDefaultExport'. + bad() { + ~~~ + at [WILDCARD]main.ts:2:3 diff --git a/tests/specs/serve/type_check/main.ts b/tests/specs/serve/type_check/main.ts new file mode 100644 index 000000000..10ba18337 --- /dev/null +++ b/tests/specs/serve/type_check/main.ts @@ -0,0 +1,4 @@ +export default { + bad() { + }, +} satisfies Deno.ServeDefaultExport; diff --git a/tests/specs/serve/type_check2/__test__.jsonc b/tests/specs/serve/type_check2/__test__.jsonc new file mode 100644 index 000000000..813eafc12 --- /dev/null +++ b/tests/specs/serve/type_check2/__test__.jsonc @@ -0,0 +1,6 @@ +{ + "args": "serve --check --port 12345 main.ts", + "output": "main.out", + "tempDir": true, + "exitCode": 1 +} diff --git a/tests/specs/serve/type_check2/main.out b/tests/specs/serve/type_check2/main.out new file mode 100644 index 000000000..259acb85b --- /dev/null +++ b/tests/specs/serve/type_check2/main.out @@ -0,0 +1,5 @@ +Check [WILDCARD] +error: TS2339 [ERROR]: Property 'doesnt_exist' does not exist on type 'Request'. + console.log(request.doesnt_exist); + ~~~~~~~~~~~~ + at [WILDCARD]main.ts:3:25 diff --git a/tests/specs/serve/type_check2/main.ts b/tests/specs/serve/type_check2/main.ts new file mode 100644 index 000000000..41cbf30ec --- /dev/null +++ b/tests/specs/serve/type_check2/main.ts @@ -0,0 +1,6 @@ +export default { + fetch(request) { + console.log(request.doesnt_exist); + return new Response("Hello world!"); + }, +} satisfies Deno.ServeDefaultExport; -- cgit v1.2.3