From f5e46c9bf2f50d66a953fa133161fc829cecff06 Mon Sep 17 00:00:00 2001 From: Matt Mastracci Date: Sat, 10 Feb 2024 13:22:13 -0700 Subject: chore: move cli/tests/ -> tests/ (#22369) This looks like a massive PR, but it's only a move from cli/tests -> tests, and updates of relative paths for files. This is the first step towards aggregate all of the integration test files under tests/, which will lead to a set of integration tests that can run without the CLI binary being built. While we could leave these tests under `cli`, it would require us to keep a more complex directory structure for the various test runners. In addition, we have a lot of complexity to ignore various test files in the `cli` project itself (cargo publish exclusion rules, autotests = false, etc). And finally, the `tests/` folder will eventually house the `test_ffi`, `test_napi` and other testing code, reducing the size of the root repo directory. For easier review, the extremely large and noisy "move" is in the first commit (with no changes -- just a move), while the remainder of the changes to actual files is in the second commit. --- .../testdata/fmt/with_config/deno.deprecated.jsonc | 20 ++++++++++ tests/testdata/fmt/with_config/deno.jsonc | 16 ++++++++ tests/testdata/fmt/with_config/subdir/a.ts | 46 ++++++++++++++++++++++ tests/testdata/fmt/with_config/subdir/b.ts | 15 +++++++ tests/testdata/fmt/with_config/subdir/c.md | 17 ++++++++ 5 files changed, 114 insertions(+) create mode 100644 tests/testdata/fmt/with_config/deno.deprecated.jsonc create mode 100644 tests/testdata/fmt/with_config/deno.jsonc create mode 100644 tests/testdata/fmt/with_config/subdir/a.ts create mode 100644 tests/testdata/fmt/with_config/subdir/b.ts create mode 100644 tests/testdata/fmt/with_config/subdir/c.md (limited to 'tests/testdata/fmt/with_config') diff --git a/tests/testdata/fmt/with_config/deno.deprecated.jsonc b/tests/testdata/fmt/with_config/deno.deprecated.jsonc new file mode 100644 index 000000000..e053233fd --- /dev/null +++ b/tests/testdata/fmt/with_config/deno.deprecated.jsonc @@ -0,0 +1,20 @@ +{ + "fmt": { + "files": { + "include": [ + "./subdir/" + ], + "exclude": [ + "./subdir/b.ts" + ] + }, + "options": { + "useTabs": true, + "lineWidth": 40, + "indentWidth": 8, + "singleQuote": true, + "proseWrap": "always", + "semiColons": false + } + } +} diff --git a/tests/testdata/fmt/with_config/deno.jsonc b/tests/testdata/fmt/with_config/deno.jsonc new file mode 100644 index 000000000..ffd265dcd --- /dev/null +++ b/tests/testdata/fmt/with_config/deno.jsonc @@ -0,0 +1,16 @@ +{ + "fmt": { + "include": [ + "./subdir/" + ], + "exclude": [ + "./subdir/b.ts" + ], + "useTabs": true, + "lineWidth": 40, + "indentWidth": 8, + "singleQuote": true, + "proseWrap": "always", + "semiColons": false + } +} diff --git a/tests/testdata/fmt/with_config/subdir/a.ts b/tests/testdata/fmt/with_config/subdir/a.ts new file mode 100644 index 000000000..5474b3aa3 --- /dev/null +++ b/tests/testdata/fmt/with_config/subdir/a.ts @@ -0,0 +1,46 @@ +Deno.test( + { perms: { net: true } }, + async function responseClone() { + const response = + await fetch( + 'http://localhost:4545/assets/fixture.json', + ) + const response1 = + response.clone() + assert( + response !== + response1, + ) + assertEquals( + response.status, + response1 + .status, + ) + assertEquals( + response.statusText, + response1 + .statusText, + ) + const u8a = + new Uint8Array( + await response + .arrayBuffer(), + ) + const u8a1 = + new Uint8Array( + await response1 + .arrayBuffer(), + ) + for ( + let i = 0; + i < + u8a.byteLength; + i++ + ) { + assertEquals( + u8a[i], + u8a1[i], + ) + } + }, +) diff --git a/tests/testdata/fmt/with_config/subdir/b.ts b/tests/testdata/fmt/with_config/subdir/b.ts new file mode 100644 index 000000000..d7eb08b09 --- /dev/null +++ b/tests/testdata/fmt/with_config/subdir/b.ts @@ -0,0 +1,15 @@ +// This file should be excluded from formatting +Deno.test( + { perms: { net: true } }, + async function fetchBodyUsedCancelStream() { + const response = await fetch( + "http://localhost:4545/assets/fixture.json", + ); + assert(response.body !== null); + + assertEquals(response.bodyUsed, false); + const promise = response.body.cancel(); + assertEquals(response.bodyUsed, true); + await promise; + }, +); \ No newline at end of file diff --git a/tests/testdata/fmt/with_config/subdir/c.md b/tests/testdata/fmt/with_config/subdir/c.md new file mode 100644 index 000000000..012f7e3d4 --- /dev/null +++ b/tests/testdata/fmt/with_config/subdir/c.md @@ -0,0 +1,17 @@ +## Permissions + +Deno is secure by default. Therefore, +unless you specifically enable it, a +program run with Deno has no file, +network, or environment access. Access +to security sensitive functionality +requires that permisisons have been +granted to an executing script through +command line flags, or a runtime +permission prompt. + +For the following example `mod.ts` has +been granted read-only access to the +file system. It cannot write to the file +system, or perform any other security +sensitive functions. -- cgit v1.2.3