diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 81574660c..754c8bc2d 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -38,6 +38,9 @@ jobs: - uses: actions/setup-node@v3 with: node-version: ${{ matrix.node }} + - uses: denoland/setup-deno@v1 + with: + deno-version: v1.x - name: Install Rust run: rustup update stable --no-self-update && rustup default stable - name: Install wasm32-unknown-unknown target diff --git a/packages/preview2-shim/lib/io/worker-io.js b/packages/preview2-shim/lib/io/worker-io.js index 3dd02a7e5..dace0c5b8 100644 --- a/packages/preview2-shim/lib/io/worker-io.js +++ b/packages/preview2-shim/lib/io/worker-io.js @@ -33,9 +33,8 @@ import { STDOUT, reverseMap, } from "./calls.js"; -import { exit, stderr, stdout, env } from "node:process"; +import nodeProcess, { exit, stderr, stdout, env } from "node:process"; -import * as nodeProcess from "node:process"; const _rawDebug = nodeProcess._rawDebug || console.error.bind(console); const workerPath = fileURLToPath( diff --git a/packages/preview2-shim/lib/nodejs/cli.js b/packages/preview2-shim/lib/nodejs/cli.js index b8da5380c..83438f9e9 100644 --- a/packages/preview2-shim/lib/nodejs/cli.js +++ b/packages/preview2-shim/lib/nodejs/cli.js @@ -1,4 +1,4 @@ -import { argv, env, cwd } from "node:process"; +import process, { argv, env, cwd } from "node:process"; import { ioCall, streams, diff --git a/packages/preview2-shim/lib/nodejs/filesystem.js b/packages/preview2-shim/lib/nodejs/filesystem.js index ef7dfe159..bf9004cb7 100644 --- a/packages/preview2-shim/lib/nodejs/filesystem.js +++ b/packages/preview2-shim/lib/nodejs/filesystem.js @@ -7,7 +7,7 @@ import { } from "../io/worker-io.js"; import { INPUT_STREAM_CREATE, OUTPUT_STREAM_CREATE } from "../io/calls.js"; import { FILE } from "../io/calls.js"; -import { +import nodeFs, { closeSync, constants, fdatasyncSync, @@ -32,7 +32,6 @@ import { } from "node:fs"; import { platform } from "node:process"; -import * as nodeFs from 'node:fs'; const lutimesSync = nodeFs.lutimesSync; const symbolDispose = Symbol.dispose || Symbol.for("dispose"); diff --git a/src/cmd/run.js b/src/cmd/run.js index 5ea1bad65..e571bfb4c 100644 --- a/src/cmd/run.js +++ b/src/cmd/run.js @@ -2,7 +2,7 @@ import { getTmpDir } from '../common.js'; import { transpile } from './transpile.js'; import { rm, stat, mkdir, writeFile, symlink } from 'node:fs/promises'; import { basename, resolve, extname } from 'node:path'; -import { fork } from 'node:child_process'; +import { spawn } from 'node:child_process'; import process from 'node:process'; import { fileURLToPath, pathToFileURL } from 'node:url'; import c from 'chalk-template'; @@ -112,6 +112,7 @@ async function runComponent (componentPath, args, opts, executor) { const runPath = resolve(outDir, '_run.js'); await writeFile(runPath, ` ${jcoImport ? `import ${JSON.stringify(pathToFileURL(jcoImport))}` : ''} + import process from 'node:process'; try { process.argv[1] = "${name}"; } catch {} @@ -119,8 +120,10 @@ async function runComponent (componentPath, args, opts, executor) { ${executor} `); + const nodePath = process.env.JCO_RUN_PATH || process.argv[0]; + process.exitCode = await new Promise((resolve, reject) => { - const cp = fork(runPath, args, { stdio: 'inherit' }); + const cp = spawn(nodePath, [...process.env.JCO_RUN_ARGS ? process.env.JCO_RUN_ARGS.split(' ') : [], runPath, ...args], { stdio: 'inherit' }); cp.on('error', reject); cp.on('exit', resolve); diff --git a/tests/gen/api_proxy.component.wasm b/tests/gen/api_proxy.component.wasm index de26f91c9..0a98fd4c5 100644 Binary files a/tests/gen/api_proxy.component.wasm and b/tests/gen/api_proxy.component.wasm differ diff --git a/tests/gen/api_proxy_streaming.component.wasm b/tests/gen/api_proxy_streaming.component.wasm index 7b5cb18e9..67054e452 100644 Binary files a/tests/gen/api_proxy_streaming.component.wasm and b/tests/gen/api_proxy_streaming.component.wasm differ diff --git a/tests/gen/api_reactor.component.wasm b/tests/gen/api_reactor.component.wasm index 8d361e59b..4bd4b6dae 100644 Binary files a/tests/gen/api_reactor.component.wasm and b/tests/gen/api_reactor.component.wasm differ diff --git a/tests/gen/api_reactor.rs b/tests/gen/api_reactor.rs index bfe56cbd4..d6c31c6e4 100644 --- a/tests/gen/api_reactor.rs +++ b/tests/gen/api_reactor.rs @@ -12,7 +12,6 @@ fn api_reactor() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/api_reactor"); cmd1.arg("--jco-import"); diff --git a/tests/gen/api_read_only.component.wasm b/tests/gen/api_read_only.component.wasm index 303241f06..e87b5d646 100644 Binary files a/tests/gen/api_read_only.component.wasm and b/tests/gen/api_read_only.component.wasm differ diff --git a/tests/gen/api_read_only.rs b/tests/gen/api_read_only.rs index 5a7fda0f9..39a98ecc4 100644 --- a/tests/gen/api_read_only.rs +++ b/tests/gen/api_read_only.rs @@ -13,7 +13,6 @@ fn api_read_only() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/api_read_only"); cmd1.arg("--jco-import"); diff --git a/tests/gen/api_time.component.wasm b/tests/gen/api_time.component.wasm index 98646ff26..9be1f2332 100644 Binary files a/tests/gen/api_time.component.wasm and b/tests/gen/api_time.component.wasm differ diff --git a/tests/gen/api_time.rs b/tests/gen/api_time.rs index a737326a3..bdd02e33e 100644 --- a/tests/gen/api_time.rs +++ b/tests/gen/api_time.rs @@ -12,7 +12,6 @@ fn api_time() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/api_time"); cmd1.arg("--jco-import"); diff --git a/tests/gen/cli_args.component.wasm b/tests/gen/cli_args.component.wasm index ac1d9988f..91a222bf3 100644 Binary files a/tests/gen/cli_args.component.wasm and b/tests/gen/cli_args.component.wasm differ diff --git a/tests/gen/cli_args.rs b/tests/gen/cli_args.rs index 324ef9b7a..0125c00b9 100644 --- a/tests/gen/cli_args.rs +++ b/tests/gen/cli_args.rs @@ -12,7 +12,6 @@ fn cli_args() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/cli_args"); cmd1.arg("--jco-import"); diff --git a/tests/gen/cli_default_clocks.component.wasm b/tests/gen/cli_default_clocks.component.wasm index 97862642b..6dc4f81f3 100644 Binary files a/tests/gen/cli_default_clocks.component.wasm and b/tests/gen/cli_default_clocks.component.wasm differ diff --git a/tests/gen/cli_default_clocks.rs b/tests/gen/cli_default_clocks.rs index e02b40fb3..5f292ce1a 100644 --- a/tests/gen/cli_default_clocks.rs +++ b/tests/gen/cli_default_clocks.rs @@ -12,7 +12,6 @@ fn cli_default_clocks() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/cli_default_clocks"); cmd1.arg("--jco-import"); diff --git a/tests/gen/cli_directory_list.component.wasm b/tests/gen/cli_directory_list.component.wasm index 9b5c9a105..ae837e833 100644 Binary files a/tests/gen/cli_directory_list.component.wasm and b/tests/gen/cli_directory_list.component.wasm differ diff --git a/tests/gen/cli_directory_list.rs b/tests/gen/cli_directory_list.rs index 5f618629f..6405f2ac8 100644 --- a/tests/gen/cli_directory_list.rs +++ b/tests/gen/cli_directory_list.rs @@ -12,7 +12,6 @@ fn cli_directory_list() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/cli_directory_list"); cmd1.arg("--jco-import"); diff --git a/tests/gen/cli_env.component.wasm b/tests/gen/cli_env.component.wasm index 90de05c29..cd6880900 100644 Binary files a/tests/gen/cli_env.component.wasm and b/tests/gen/cli_env.component.wasm differ diff --git a/tests/gen/cli_env.rs b/tests/gen/cli_env.rs index 7130d1fa3..aca8dff2c 100644 --- a/tests/gen/cli_env.rs +++ b/tests/gen/cli_env.rs @@ -12,7 +12,6 @@ fn cli_env() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/cli_env"); cmd1.arg("--jco-import"); diff --git a/tests/gen/cli_exit_default.component.wasm b/tests/gen/cli_exit_default.component.wasm index 399f22b5d..3adb5603b 100644 Binary files a/tests/gen/cli_exit_default.component.wasm and b/tests/gen/cli_exit_default.component.wasm differ diff --git a/tests/gen/cli_exit_default.rs b/tests/gen/cli_exit_default.rs index 0f4dec4f8..4e2b796ea 100644 --- a/tests/gen/cli_exit_default.rs +++ b/tests/gen/cli_exit_default.rs @@ -12,7 +12,6 @@ fn cli_exit_default() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/cli_exit_default"); cmd1.arg("--jco-import"); diff --git a/tests/gen/cli_exit_failure.component.wasm b/tests/gen/cli_exit_failure.component.wasm index 8c9f3a7bc..6a7e7c3e9 100644 Binary files a/tests/gen/cli_exit_failure.component.wasm and b/tests/gen/cli_exit_failure.component.wasm differ diff --git a/tests/gen/cli_exit_failure.rs b/tests/gen/cli_exit_failure.rs index 2ee2e9075..5594bc945 100644 --- a/tests/gen/cli_exit_failure.rs +++ b/tests/gen/cli_exit_failure.rs @@ -12,7 +12,6 @@ fn cli_exit_failure() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/cli_exit_failure"); cmd1.arg("--jco-import"); diff --git a/tests/gen/cli_exit_panic.component.wasm b/tests/gen/cli_exit_panic.component.wasm index be3e850da..f2009c3eb 100644 Binary files a/tests/gen/cli_exit_panic.component.wasm and b/tests/gen/cli_exit_panic.component.wasm differ diff --git a/tests/gen/cli_exit_panic.rs b/tests/gen/cli_exit_panic.rs index a4df7de78..0aac8afbe 100644 --- a/tests/gen/cli_exit_panic.rs +++ b/tests/gen/cli_exit_panic.rs @@ -12,7 +12,6 @@ fn cli_exit_panic() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/cli_exit_panic"); cmd1.arg("--jco-import"); diff --git a/tests/gen/cli_exit_success.component.wasm b/tests/gen/cli_exit_success.component.wasm index 5cf35a938..29b932956 100644 Binary files a/tests/gen/cli_exit_success.component.wasm and b/tests/gen/cli_exit_success.component.wasm differ diff --git a/tests/gen/cli_exit_success.rs b/tests/gen/cli_exit_success.rs index bd6d9560e..305019780 100644 --- a/tests/gen/cli_exit_success.rs +++ b/tests/gen/cli_exit_success.rs @@ -12,7 +12,6 @@ fn cli_exit_success() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/cli_exit_success"); cmd1.arg("--jco-import"); diff --git a/tests/gen/cli_export_cabi_realloc.component.wasm b/tests/gen/cli_export_cabi_realloc.component.wasm index 6900b3f76..e8f53acf8 100644 Binary files a/tests/gen/cli_export_cabi_realloc.component.wasm and b/tests/gen/cli_export_cabi_realloc.component.wasm differ diff --git a/tests/gen/cli_export_cabi_realloc.rs b/tests/gen/cli_export_cabi_realloc.rs index a74a8d266..6e939f1bf 100644 --- a/tests/gen/cli_export_cabi_realloc.rs +++ b/tests/gen/cli_export_cabi_realloc.rs @@ -12,7 +12,6 @@ fn cli_export_cabi_realloc() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/cli_export_cabi_realloc"); cmd1.arg("--jco-import"); diff --git a/tests/gen/cli_file_append.component.wasm b/tests/gen/cli_file_append.component.wasm index 2f592b791..5a2793c90 100644 Binary files a/tests/gen/cli_file_append.component.wasm and b/tests/gen/cli_file_append.component.wasm differ diff --git a/tests/gen/cli_file_append.rs b/tests/gen/cli_file_append.rs index d2424db61..a02f037d4 100644 --- a/tests/gen/cli_file_append.rs +++ b/tests/gen/cli_file_append.rs @@ -12,7 +12,6 @@ fn cli_file_append() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/cli_file_append"); cmd1.arg("--jco-import"); diff --git a/tests/gen/cli_file_dir_sync.component.wasm b/tests/gen/cli_file_dir_sync.component.wasm index 46d64e5ea..256357430 100644 Binary files a/tests/gen/cli_file_dir_sync.component.wasm and b/tests/gen/cli_file_dir_sync.component.wasm differ diff --git a/tests/gen/cli_file_dir_sync.rs b/tests/gen/cli_file_dir_sync.rs index b78340ab6..a5613d4de 100644 --- a/tests/gen/cli_file_dir_sync.rs +++ b/tests/gen/cli_file_dir_sync.rs @@ -12,7 +12,6 @@ fn cli_file_dir_sync() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/cli_file_dir_sync"); cmd1.arg("--jco-import"); diff --git a/tests/gen/cli_file_read.component.wasm b/tests/gen/cli_file_read.component.wasm index 7a38672ce..359430fcb 100644 Binary files a/tests/gen/cli_file_read.component.wasm and b/tests/gen/cli_file_read.component.wasm differ diff --git a/tests/gen/cli_file_read.rs b/tests/gen/cli_file_read.rs index 1ba975ca9..acacc16a3 100644 --- a/tests/gen/cli_file_read.rs +++ b/tests/gen/cli_file_read.rs @@ -12,7 +12,6 @@ fn cli_file_read() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/cli_file_read"); cmd1.arg("--jco-import"); diff --git a/tests/gen/cli_hello_stdout.component.wasm b/tests/gen/cli_hello_stdout.component.wasm index e5ca4ac4f..4df114a16 100644 Binary files a/tests/gen/cli_hello_stdout.component.wasm and b/tests/gen/cli_hello_stdout.component.wasm differ diff --git a/tests/gen/cli_hello_stdout.rs b/tests/gen/cli_hello_stdout.rs index 18ace3264..697f4830a 100644 --- a/tests/gen/cli_hello_stdout.rs +++ b/tests/gen/cli_hello_stdout.rs @@ -12,7 +12,6 @@ fn cli_hello_stdout() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/cli_hello_stdout"); cmd1.arg("--jco-import"); diff --git a/tests/gen/cli_no_ip_name_lookup.component.wasm b/tests/gen/cli_no_ip_name_lookup.component.wasm index e7ddb5009..7f0e93246 100644 Binary files a/tests/gen/cli_no_ip_name_lookup.component.wasm and b/tests/gen/cli_no_ip_name_lookup.component.wasm differ diff --git a/tests/gen/cli_no_ip_name_lookup.rs b/tests/gen/cli_no_ip_name_lookup.rs index 77b3f5429..2562f2bad 100644 --- a/tests/gen/cli_no_ip_name_lookup.rs +++ b/tests/gen/cli_no_ip_name_lookup.rs @@ -12,7 +12,6 @@ fn cli_no_ip_name_lookup() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/cli_no_ip_name_lookup"); cmd1.arg("--jco-import"); diff --git a/tests/gen/cli_no_tcp.component.wasm b/tests/gen/cli_no_tcp.component.wasm index 43e351177..8bafe905a 100644 Binary files a/tests/gen/cli_no_tcp.component.wasm and b/tests/gen/cli_no_tcp.component.wasm differ diff --git a/tests/gen/cli_no_tcp.rs b/tests/gen/cli_no_tcp.rs index 973ba164f..4d5749670 100644 --- a/tests/gen/cli_no_tcp.rs +++ b/tests/gen/cli_no_tcp.rs @@ -12,7 +12,6 @@ fn cli_no_tcp() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/cli_no_tcp"); cmd1.arg("--jco-import"); diff --git a/tests/gen/cli_no_udp.component.wasm b/tests/gen/cli_no_udp.component.wasm index 5a85d0c83..68b58c969 100644 Binary files a/tests/gen/cli_no_udp.component.wasm and b/tests/gen/cli_no_udp.component.wasm differ diff --git a/tests/gen/cli_no_udp.rs b/tests/gen/cli_no_udp.rs index f67bd3d74..74eeb9c60 100644 --- a/tests/gen/cli_no_udp.rs +++ b/tests/gen/cli_no_udp.rs @@ -12,7 +12,6 @@ fn cli_no_udp() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/cli_no_udp"); cmd1.arg("--jco-import"); diff --git a/tests/gen/cli_splice_stdin.component.wasm b/tests/gen/cli_splice_stdin.component.wasm index d39173519..a903b61c2 100644 Binary files a/tests/gen/cli_splice_stdin.component.wasm and b/tests/gen/cli_splice_stdin.component.wasm differ diff --git a/tests/gen/cli_splice_stdin.rs b/tests/gen/cli_splice_stdin.rs index 495f4db03..7b79b5ad9 100644 --- a/tests/gen/cli_splice_stdin.rs +++ b/tests/gen/cli_splice_stdin.rs @@ -12,7 +12,6 @@ fn cli_splice_stdin() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/cli_splice_stdin"); cmd1.arg("--jco-import"); diff --git a/tests/gen/cli_stdin.component.wasm b/tests/gen/cli_stdin.component.wasm index e8f6135c9..fe734d51e 100644 Binary files a/tests/gen/cli_stdin.component.wasm and b/tests/gen/cli_stdin.component.wasm differ diff --git a/tests/gen/cli_stdin.rs b/tests/gen/cli_stdin.rs index b3512f8f1..0e20d3359 100644 --- a/tests/gen/cli_stdin.rs +++ b/tests/gen/cli_stdin.rs @@ -13,7 +13,6 @@ fn cli_stdin() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/cli_stdin"); cmd1.arg("--jco-import"); diff --git a/tests/gen/cli_stdio_write_flushes.component.wasm b/tests/gen/cli_stdio_write_flushes.component.wasm index e74aa0828..fe1d3c362 100644 Binary files a/tests/gen/cli_stdio_write_flushes.component.wasm and b/tests/gen/cli_stdio_write_flushes.component.wasm differ diff --git a/tests/gen/cli_stdio_write_flushes.rs b/tests/gen/cli_stdio_write_flushes.rs index b1bfdf9f1..b01dcdbb3 100644 --- a/tests/gen/cli_stdio_write_flushes.rs +++ b/tests/gen/cli_stdio_write_flushes.rs @@ -12,7 +12,6 @@ fn cli_stdio_write_flushes() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/cli_stdio_write_flushes"); cmd1.arg("--jco-import"); diff --git a/tests/gen/deno_api_reactor.rs b/tests/gen/deno_api_reactor.rs new file mode 100644 index 000000000..01dbcd905 --- /dev/null +++ b/tests/gen/deno_api_reactor.rs @@ -0,0 +1,29 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use std::process::{Command, Stdio}; + +#[test] +fn api_reactor() -> anyhow::Result<()> { + { + let wasi_file = "./tests/gen/api_reactor.component.wasm"; + let _ = fs::remove_dir_all("./tests/rundir/deno_api_reactor"); + let mut cmd1 = Command::new("node"); + cmd1.arg("./src/jco.js"); + cmd1.arg("run"); + cmd1.env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap ./tests/importmap.json -A"); + cmd1.arg("--jco-dir"); + cmd1.arg("./tests/rundir/deno_api_reactor"); + cmd1.arg("--jco-import"); + cmd1.arg("./tests/virtualenvs/base.js"); + cmd1.arg(wasi_file); + cmd1.args(&["hello", "this", "", "is an argument", "with 🚩 emoji"]); + cmd1.stdin(Stdio::null()); + let mut cmd1_child = cmd1.spawn().expect("failed to spawn test program"); + let status = cmd1_child.wait().expect("failed to wait on child"); + assert!(status.success(), "test execution failed"); + } + Ok(()) +} diff --git a/tests/gen/deno_api_time.rs b/tests/gen/deno_api_time.rs new file mode 100644 index 000000000..b28190f44 --- /dev/null +++ b/tests/gen/deno_api_time.rs @@ -0,0 +1,29 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use std::process::{Command, Stdio}; + +#[test] +fn api_time() -> anyhow::Result<()> { + { + let wasi_file = "./tests/gen/api_time.component.wasm"; + let _ = fs::remove_dir_all("./tests/rundir/deno_api_time"); + let mut cmd1 = Command::new("node"); + cmd1.arg("./src/jco.js"); + cmd1.arg("run"); + cmd1.env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap ./tests/importmap.json -A"); + cmd1.arg("--jco-dir"); + cmd1.arg("./tests/rundir/deno_api_time"); + cmd1.arg("--jco-import"); + cmd1.arg("./tests/virtualenvs/fakeclocks.js"); + cmd1.arg(wasi_file); + cmd1.args(&["hello", "this", "", "is an argument", "with 🚩 emoji"]); + cmd1.stdin(Stdio::null()); + let mut cmd1_child = cmd1.spawn().expect("failed to spawn test program"); + let status = cmd1_child.wait().expect("failed to wait on child"); + assert!(status.success(), "test execution failed"); + } + Ok(()) +} diff --git a/tests/gen/deno_cli_args.rs b/tests/gen/deno_cli_args.rs new file mode 100644 index 000000000..582927346 --- /dev/null +++ b/tests/gen/deno_cli_args.rs @@ -0,0 +1,29 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use std::process::{Command, Stdio}; + +#[test] +fn cli_args() -> anyhow::Result<()> { + { + let wasi_file = "./tests/gen/cli_args.component.wasm"; + let _ = fs::remove_dir_all("./tests/rundir/deno_cli_args"); + let mut cmd1 = Command::new("node"); + cmd1.arg("./src/jco.js"); + cmd1.arg("run"); + cmd1.env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap ./tests/importmap.json -A"); + cmd1.arg("--jco-dir"); + cmd1.arg("./tests/rundir/deno_cli_args"); + cmd1.arg("--jco-import"); + cmd1.arg("./tests/virtualenvs/base.js"); + cmd1.arg(wasi_file); + cmd1.args(&["hello", "this", "", "is an argument", "with 🚩 emoji"]); + cmd1.stdin(Stdio::null()); + let mut cmd1_child = cmd1.spawn().expect("failed to spawn test program"); + let status = cmd1_child.wait().expect("failed to wait on child"); + assert!(status.success(), "test execution failed"); + } + Ok(()) +} diff --git a/tests/gen/deno_cli_env.rs b/tests/gen/deno_cli_env.rs new file mode 100644 index 000000000..de88fabc2 --- /dev/null +++ b/tests/gen/deno_cli_env.rs @@ -0,0 +1,29 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use std::process::{Command, Stdio}; + +#[test] +fn cli_env() -> anyhow::Result<()> { + { + let wasi_file = "./tests/gen/cli_env.component.wasm"; + let _ = fs::remove_dir_all("./tests/rundir/deno_cli_env"); + let mut cmd1 = Command::new("node"); + cmd1.arg("./src/jco.js"); + cmd1.arg("run"); + cmd1.env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap ./tests/importmap.json -A"); + cmd1.arg("--jco-dir"); + cmd1.arg("./tests/rundir/deno_cli_env"); + cmd1.arg("--jco-import"); + cmd1.arg("./tests/virtualenvs/envtest.js"); + cmd1.arg(wasi_file); + cmd1.args(&["hello", "this", "", "is an argument", "with 🚩 emoji"]); + cmd1.stdin(Stdio::null()); + let mut cmd1_child = cmd1.spawn().expect("failed to spawn test program"); + let status = cmd1_child.wait().expect("failed to wait on child"); + assert!(status.success(), "test execution failed"); + } + Ok(()) +} diff --git a/tests/gen/deno_cli_exit_default.rs b/tests/gen/deno_cli_exit_default.rs new file mode 100644 index 000000000..d87c8a038 --- /dev/null +++ b/tests/gen/deno_cli_exit_default.rs @@ -0,0 +1,29 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use std::process::{Command, Stdio}; + +#[test] +fn cli_exit_default() -> anyhow::Result<()> { + { + let wasi_file = "./tests/gen/cli_exit_default.component.wasm"; + let _ = fs::remove_dir_all("./tests/rundir/deno_cli_exit_default"); + let mut cmd1 = Command::new("node"); + cmd1.arg("./src/jco.js"); + cmd1.arg("run"); + cmd1.env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap ./tests/importmap.json -A"); + cmd1.arg("--jco-dir"); + cmd1.arg("./tests/rundir/deno_cli_exit_default"); + cmd1.arg("--jco-import"); + cmd1.arg("./tests/virtualenvs/base.js"); + cmd1.arg(wasi_file); + cmd1.args(&["hello", "this", "", "is an argument", "with 🚩 emoji"]); + cmd1.stdin(Stdio::null()); + let mut cmd1_child = cmd1.spawn().expect("failed to spawn test program"); + let status = cmd1_child.wait().expect("failed to wait on child"); + assert!(status.success(), "test execution failed"); + } + Ok(()) +} diff --git a/tests/gen/deno_cli_exit_failure.rs b/tests/gen/deno_cli_exit_failure.rs new file mode 100644 index 000000000..7cc459a70 --- /dev/null +++ b/tests/gen/deno_cli_exit_failure.rs @@ -0,0 +1,29 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use std::process::{Command, Stdio}; + +#[test] +fn cli_exit_failure() -> anyhow::Result<()> { + { + let wasi_file = "./tests/gen/cli_exit_failure.component.wasm"; + let _ = fs::remove_dir_all("./tests/rundir/deno_cli_exit_failure"); + let mut cmd1 = Command::new("node"); + cmd1.arg("./src/jco.js"); + cmd1.arg("run"); + cmd1.env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap ./tests/importmap.json -A"); + cmd1.arg("--jco-dir"); + cmd1.arg("./tests/rundir/deno_cli_exit_failure"); + cmd1.arg("--jco-import"); + cmd1.arg("./tests/virtualenvs/base.js"); + cmd1.arg(wasi_file); + cmd1.args(&["hello", "this", "", "is an argument", "with 🚩 emoji"]); + cmd1.stdin(Stdio::null()); + let mut cmd1_child = cmd1.spawn().expect("failed to spawn test program"); + let status = cmd1_child.wait().expect("failed to wait on child"); + assert!(!status.success(), "test execution failed"); + } + Ok(()) +} diff --git a/tests/gen/deno_cli_exit_success.rs b/tests/gen/deno_cli_exit_success.rs new file mode 100644 index 000000000..19f5e77d3 --- /dev/null +++ b/tests/gen/deno_cli_exit_success.rs @@ -0,0 +1,29 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use std::process::{Command, Stdio}; + +#[test] +fn cli_exit_success() -> anyhow::Result<()> { + { + let wasi_file = "./tests/gen/cli_exit_success.component.wasm"; + let _ = fs::remove_dir_all("./tests/rundir/deno_cli_exit_success"); + let mut cmd1 = Command::new("node"); + cmd1.arg("./src/jco.js"); + cmd1.arg("run"); + cmd1.env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap ./tests/importmap.json -A"); + cmd1.arg("--jco-dir"); + cmd1.arg("./tests/rundir/deno_cli_exit_success"); + cmd1.arg("--jco-import"); + cmd1.arg("./tests/virtualenvs/base.js"); + cmd1.arg(wasi_file); + cmd1.args(&["hello", "this", "", "is an argument", "with 🚩 emoji"]); + cmd1.stdin(Stdio::null()); + let mut cmd1_child = cmd1.spawn().expect("failed to spawn test program"); + let status = cmd1_child.wait().expect("failed to wait on child"); + assert!(status.success(), "test execution failed"); + } + Ok(()) +} diff --git a/tests/gen/deno_preview1_big_random_buf.rs b/tests/gen/deno_preview1_big_random_buf.rs new file mode 100644 index 000000000..1abc313d1 --- /dev/null +++ b/tests/gen/deno_preview1_big_random_buf.rs @@ -0,0 +1,29 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use std::process::{Command, Stdio}; + +#[test] +fn preview1_big_random_buf() -> anyhow::Result<()> { + { + let wasi_file = "./tests/gen/preview1_big_random_buf.component.wasm"; + let _ = fs::remove_dir_all("./tests/rundir/deno_preview1_big_random_buf"); + let mut cmd1 = Command::new("node"); + cmd1.arg("./src/jco.js"); + cmd1.arg("run"); + cmd1.env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap ./tests/importmap.json -A"); + cmd1.arg("--jco-dir"); + cmd1.arg("./tests/rundir/deno_preview1_big_random_buf"); + cmd1.arg("--jco-import"); + cmd1.arg("./tests/virtualenvs/scratch.js"); + cmd1.arg(wasi_file); + cmd1.args(&["hello", "this", "", "is an argument", "with 🚩 emoji"]); + cmd1.stdin(Stdio::null()); + let mut cmd1_child = cmd1.spawn().expect("failed to spawn test program"); + let status = cmd1_child.wait().expect("failed to wait on child"); + assert!(status.success(), "test execution failed"); + } + Ok(()) +} diff --git a/tests/gen/deno_preview2_random.rs b/tests/gen/deno_preview2_random.rs new file mode 100644 index 000000000..c2c1ddb75 --- /dev/null +++ b/tests/gen/deno_preview2_random.rs @@ -0,0 +1,29 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use std::process::{Command, Stdio}; + +#[test] +fn preview2_random() -> anyhow::Result<()> { + { + let wasi_file = "./tests/gen/preview2_random.component.wasm"; + let _ = fs::remove_dir_all("./tests/rundir/deno_preview2_random"); + let mut cmd1 = Command::new("node"); + cmd1.arg("./src/jco.js"); + cmd1.arg("run"); + cmd1.env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap ./tests/importmap.json -A"); + cmd1.arg("--jco-dir"); + cmd1.arg("./tests/rundir/deno_preview2_random"); + cmd1.arg("--jco-import"); + cmd1.arg("./tests/virtualenvs/base.js"); + cmd1.arg(wasi_file); + cmd1.args(&["hello", "this", "", "is an argument", "with 🚩 emoji"]); + cmd1.stdin(Stdio::null()); + let mut cmd1_child = cmd1.spawn().expect("failed to spawn test program"); + let status = cmd1_child.wait().expect("failed to wait on child"); + assert!(status.success(), "test execution failed"); + } + Ok(()) +} diff --git a/tests/gen/http_outbound_request_content_length.component.wasm b/tests/gen/http_outbound_request_content_length.component.wasm index ef56a4771..8230b1126 100644 Binary files a/tests/gen/http_outbound_request_content_length.component.wasm and b/tests/gen/http_outbound_request_content_length.component.wasm differ diff --git a/tests/gen/http_outbound_request_content_length.rs b/tests/gen/http_outbound_request_content_length.rs index 1c2118f9c..f6f4a40e7 100644 --- a/tests/gen/http_outbound_request_content_length.rs +++ b/tests/gen/http_outbound_request_content_length.rs @@ -12,7 +12,6 @@ fn http_outbound_request_content_length() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/http_outbound_request_content_length"); cmd1.arg("--jco-import"); diff --git a/tests/gen/http_outbound_request_get.component.wasm b/tests/gen/http_outbound_request_get.component.wasm index 337f81196..1146bdb85 100644 Binary files a/tests/gen/http_outbound_request_get.component.wasm and b/tests/gen/http_outbound_request_get.component.wasm differ diff --git a/tests/gen/http_outbound_request_get.rs b/tests/gen/http_outbound_request_get.rs index 47295784c..d945eee27 100644 --- a/tests/gen/http_outbound_request_get.rs +++ b/tests/gen/http_outbound_request_get.rs @@ -12,7 +12,6 @@ fn http_outbound_request_get() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/http_outbound_request_get"); cmd1.arg("--jco-import"); diff --git a/tests/gen/http_outbound_request_invalid_dnsname.component.wasm b/tests/gen/http_outbound_request_invalid_dnsname.component.wasm index c5c2f8062..80914663f 100644 Binary files a/tests/gen/http_outbound_request_invalid_dnsname.component.wasm and b/tests/gen/http_outbound_request_invalid_dnsname.component.wasm differ diff --git a/tests/gen/http_outbound_request_invalid_dnsname.rs b/tests/gen/http_outbound_request_invalid_dnsname.rs index 41c404a7d..18e6bbb74 100644 --- a/tests/gen/http_outbound_request_invalid_dnsname.rs +++ b/tests/gen/http_outbound_request_invalid_dnsname.rs @@ -12,7 +12,6 @@ fn http_outbound_request_invalid_dnsname() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/http_outbound_request_invalid_dnsname"); cmd1.arg("--jco-import"); diff --git a/tests/gen/http_outbound_request_invalid_header.component.wasm b/tests/gen/http_outbound_request_invalid_header.component.wasm index 2f7ffdcf0..afd86a033 100644 Binary files a/tests/gen/http_outbound_request_invalid_header.component.wasm and b/tests/gen/http_outbound_request_invalid_header.component.wasm differ diff --git a/tests/gen/http_outbound_request_invalid_header.rs b/tests/gen/http_outbound_request_invalid_header.rs index 776f12813..a8ff438fa 100644 --- a/tests/gen/http_outbound_request_invalid_header.rs +++ b/tests/gen/http_outbound_request_invalid_header.rs @@ -12,7 +12,6 @@ fn http_outbound_request_invalid_header() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/http_outbound_request_invalid_header"); cmd1.arg("--jco-import"); diff --git a/tests/gen/http_outbound_request_invalid_port.component.wasm b/tests/gen/http_outbound_request_invalid_port.component.wasm index 556299b53..01888f80b 100644 Binary files a/tests/gen/http_outbound_request_invalid_port.component.wasm and b/tests/gen/http_outbound_request_invalid_port.component.wasm differ diff --git a/tests/gen/http_outbound_request_invalid_port.rs b/tests/gen/http_outbound_request_invalid_port.rs index c18362777..9dd4d63c6 100644 --- a/tests/gen/http_outbound_request_invalid_port.rs +++ b/tests/gen/http_outbound_request_invalid_port.rs @@ -12,7 +12,6 @@ fn http_outbound_request_invalid_port() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/http_outbound_request_invalid_port"); cmd1.arg("--jco-import"); diff --git a/tests/gen/http_outbound_request_invalid_version.component.wasm b/tests/gen/http_outbound_request_invalid_version.component.wasm index 98a31861e..312ab0423 100644 Binary files a/tests/gen/http_outbound_request_invalid_version.component.wasm and b/tests/gen/http_outbound_request_invalid_version.component.wasm differ diff --git a/tests/gen/http_outbound_request_invalid_version.rs b/tests/gen/http_outbound_request_invalid_version.rs index 85834d4a6..2540cb15c 100644 --- a/tests/gen/http_outbound_request_invalid_version.rs +++ b/tests/gen/http_outbound_request_invalid_version.rs @@ -12,7 +12,6 @@ fn http_outbound_request_invalid_version() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/http_outbound_request_invalid_version"); cmd1.arg("--jco-import"); diff --git a/tests/gen/http_outbound_request_large_post.component.wasm b/tests/gen/http_outbound_request_large_post.component.wasm index 5be61213a..2e5b7b675 100644 Binary files a/tests/gen/http_outbound_request_large_post.component.wasm and b/tests/gen/http_outbound_request_large_post.component.wasm differ diff --git a/tests/gen/http_outbound_request_large_post.rs b/tests/gen/http_outbound_request_large_post.rs index ed4ce92b3..288f14d1d 100644 --- a/tests/gen/http_outbound_request_large_post.rs +++ b/tests/gen/http_outbound_request_large_post.rs @@ -12,7 +12,6 @@ fn http_outbound_request_large_post() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/http_outbound_request_large_post"); cmd1.arg("--jco-import"); diff --git a/tests/gen/http_outbound_request_post.component.wasm b/tests/gen/http_outbound_request_post.component.wasm index a87851017..08f95520d 100644 Binary files a/tests/gen/http_outbound_request_post.component.wasm and b/tests/gen/http_outbound_request_post.component.wasm differ diff --git a/tests/gen/http_outbound_request_post.rs b/tests/gen/http_outbound_request_post.rs index 207510769..aa68ecaa6 100644 --- a/tests/gen/http_outbound_request_post.rs +++ b/tests/gen/http_outbound_request_post.rs @@ -12,7 +12,6 @@ fn http_outbound_request_post() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/http_outbound_request_post"); cmd1.arg("--jco-import"); diff --git a/tests/gen/http_outbound_request_put.component.wasm b/tests/gen/http_outbound_request_put.component.wasm index 8a9591470..2c8a0c8fb 100644 Binary files a/tests/gen/http_outbound_request_put.component.wasm and b/tests/gen/http_outbound_request_put.component.wasm differ diff --git a/tests/gen/http_outbound_request_put.rs b/tests/gen/http_outbound_request_put.rs index 03ec10f8a..3cb10a017 100644 --- a/tests/gen/http_outbound_request_put.rs +++ b/tests/gen/http_outbound_request_put.rs @@ -12,7 +12,6 @@ fn http_outbound_request_put() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/http_outbound_request_put"); cmd1.arg("--jco-import"); diff --git a/tests/gen/http_outbound_request_response_build.component.wasm b/tests/gen/http_outbound_request_response_build.component.wasm index 5123fce9a..9119ee36f 100644 Binary files a/tests/gen/http_outbound_request_response_build.component.wasm and b/tests/gen/http_outbound_request_response_build.component.wasm differ diff --git a/tests/gen/http_outbound_request_response_build.rs b/tests/gen/http_outbound_request_response_build.rs index 6be0e06e0..023ba16fd 100644 --- a/tests/gen/http_outbound_request_response_build.rs +++ b/tests/gen/http_outbound_request_response_build.rs @@ -12,7 +12,6 @@ fn http_outbound_request_response_build() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/http_outbound_request_response_build"); cmd1.arg("--jco-import"); diff --git a/tests/gen/http_outbound_request_unknown_method.component.wasm b/tests/gen/http_outbound_request_unknown_method.component.wasm index 4453d8dd9..4ff20b502 100644 Binary files a/tests/gen/http_outbound_request_unknown_method.component.wasm and b/tests/gen/http_outbound_request_unknown_method.component.wasm differ diff --git a/tests/gen/http_outbound_request_unknown_method.rs b/tests/gen/http_outbound_request_unknown_method.rs index 7d824d327..285febfa1 100644 --- a/tests/gen/http_outbound_request_unknown_method.rs +++ b/tests/gen/http_outbound_request_unknown_method.rs @@ -12,7 +12,6 @@ fn http_outbound_request_unknown_method() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/http_outbound_request_unknown_method"); cmd1.arg("--jco-import"); diff --git a/tests/gen/http_outbound_request_unsupported_scheme.component.wasm b/tests/gen/http_outbound_request_unsupported_scheme.component.wasm index 78f35d23c..0a8ee6885 100644 Binary files a/tests/gen/http_outbound_request_unsupported_scheme.component.wasm and b/tests/gen/http_outbound_request_unsupported_scheme.component.wasm differ diff --git a/tests/gen/http_outbound_request_unsupported_scheme.rs b/tests/gen/http_outbound_request_unsupported_scheme.rs index acde98543..230e165d2 100644 --- a/tests/gen/http_outbound_request_unsupported_scheme.rs +++ b/tests/gen/http_outbound_request_unsupported_scheme.rs @@ -12,7 +12,6 @@ fn http_outbound_request_unsupported_scheme() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/http_outbound_request_unsupported_scheme"); cmd1.arg("--jco-import"); diff --git a/tests/gen/mod.rs b/tests/gen/mod.rs index 294feb073..83f00a005 100644 --- a/tests/gen/mod.rs +++ b/tests/gen/mod.rs @@ -20,6 +20,15 @@ mod cli_no_udp; mod cli_splice_stdin; mod cli_stdin; mod cli_stdio_write_flushes; +mod deno_api_reactor; +mod deno_api_time; +mod deno_cli_args; +mod deno_cli_env; +mod deno_cli_exit_default; +mod deno_cli_exit_failure; +mod deno_cli_exit_success; +mod deno_preview1_big_random_buf; +mod deno_preview2_random; mod http_outbound_request_content_length; mod http_outbound_request_get; mod http_outbound_request_invalid_dnsname; diff --git a/tests/gen/piped_multiple.component.wasm b/tests/gen/piped_multiple.component.wasm index ad9fdba67..2592779d4 100644 Binary files a/tests/gen/piped_multiple.component.wasm and b/tests/gen/piped_multiple.component.wasm differ diff --git a/tests/gen/piped_multiple.rs b/tests/gen/piped_multiple.rs index 892ba0ff5..afc87eb2b 100644 --- a/tests/gen/piped_multiple.rs +++ b/tests/gen/piped_multiple.rs @@ -12,7 +12,6 @@ fn piped_multiple() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/piped_multiple"); cmd1.arg("--jco-import"); @@ -25,7 +24,6 @@ fn piped_multiple() -> anyhow::Result<()> { let mut cmd2 = Command::new("node"); cmd2.arg("./src/jco.js"); cmd2.arg("run"); - cmd2.arg("--jco-dir"); cmd2.arg("./tests/rundir/piped_multiple_consumer"); cmd2.arg("--jco-import"); diff --git a/tests/gen/piped_polling.component.wasm b/tests/gen/piped_polling.component.wasm index cfb850c49..cec14dfa8 100644 Binary files a/tests/gen/piped_polling.component.wasm and b/tests/gen/piped_polling.component.wasm differ diff --git a/tests/gen/piped_polling.rs b/tests/gen/piped_polling.rs index 669915559..7f8e81c98 100644 --- a/tests/gen/piped_polling.rs +++ b/tests/gen/piped_polling.rs @@ -12,7 +12,6 @@ fn piped_polling() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/piped_polling"); cmd1.arg("--jco-import"); @@ -25,7 +24,6 @@ fn piped_polling() -> anyhow::Result<()> { let mut cmd2 = Command::new("node"); cmd2.arg("./src/jco.js"); cmd2.arg("run"); - cmd2.arg("--jco-dir"); cmd2.arg("./tests/rundir/piped_polling_consumer"); cmd2.arg("--jco-import"); diff --git a/tests/gen/piped_simple.component.wasm b/tests/gen/piped_simple.component.wasm index 1693508b2..8067d0fe3 100644 Binary files a/tests/gen/piped_simple.component.wasm and b/tests/gen/piped_simple.component.wasm differ diff --git a/tests/gen/piped_simple.rs b/tests/gen/piped_simple.rs index b00492982..e68b1199b 100644 --- a/tests/gen/piped_simple.rs +++ b/tests/gen/piped_simple.rs @@ -12,7 +12,6 @@ fn piped_simple() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/piped_simple"); cmd1.arg("--jco-import"); @@ -25,7 +24,6 @@ fn piped_simple() -> anyhow::Result<()> { let mut cmd2 = Command::new("node"); cmd2.arg("./src/jco.js"); cmd2.arg("run"); - cmd2.arg("--jco-dir"); cmd2.arg("./tests/rundir/piped_simple_consumer"); cmd2.arg("--jco-import"); diff --git a/tests/gen/preview1_big_random_buf.component.wasm b/tests/gen/preview1_big_random_buf.component.wasm index a91de4b12..d3354bcca 100644 Binary files a/tests/gen/preview1_big_random_buf.component.wasm and b/tests/gen/preview1_big_random_buf.component.wasm differ diff --git a/tests/gen/preview1_big_random_buf.rs b/tests/gen/preview1_big_random_buf.rs index 56f92550e..d0553a164 100644 --- a/tests/gen/preview1_big_random_buf.rs +++ b/tests/gen/preview1_big_random_buf.rs @@ -12,7 +12,6 @@ fn preview1_big_random_buf() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_big_random_buf"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_clock_time_get.component.wasm b/tests/gen/preview1_clock_time_get.component.wasm index 6ee805d0b..6ae0ea18b 100644 Binary files a/tests/gen/preview1_clock_time_get.component.wasm and b/tests/gen/preview1_clock_time_get.component.wasm differ diff --git a/tests/gen/preview1_clock_time_get.rs b/tests/gen/preview1_clock_time_get.rs index 8fb890ac4..357b11b1f 100644 --- a/tests/gen/preview1_clock_time_get.rs +++ b/tests/gen/preview1_clock_time_get.rs @@ -12,7 +12,6 @@ fn preview1_clock_time_get() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_clock_time_get"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_close_preopen.component.wasm b/tests/gen/preview1_close_preopen.component.wasm index 1cdebc0e0..828299b52 100644 Binary files a/tests/gen/preview1_close_preopen.component.wasm and b/tests/gen/preview1_close_preopen.component.wasm differ diff --git a/tests/gen/preview1_close_preopen.rs b/tests/gen/preview1_close_preopen.rs index f593838ed..791f2a9d9 100644 --- a/tests/gen/preview1_close_preopen.rs +++ b/tests/gen/preview1_close_preopen.rs @@ -12,7 +12,6 @@ fn preview1_close_preopen() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_close_preopen"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_dangling_fd.component.wasm b/tests/gen/preview1_dangling_fd.component.wasm index 0301a3a54..c6577f51c 100644 Binary files a/tests/gen/preview1_dangling_fd.component.wasm and b/tests/gen/preview1_dangling_fd.component.wasm differ diff --git a/tests/gen/preview1_dangling_fd.rs b/tests/gen/preview1_dangling_fd.rs index 6a101805b..e84a97522 100644 --- a/tests/gen/preview1_dangling_fd.rs +++ b/tests/gen/preview1_dangling_fd.rs @@ -12,7 +12,6 @@ fn preview1_dangling_fd() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_dangling_fd"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_dangling_symlink.component.wasm b/tests/gen/preview1_dangling_symlink.component.wasm index 8161c8456..af57db7ec 100644 Binary files a/tests/gen/preview1_dangling_symlink.component.wasm and b/tests/gen/preview1_dangling_symlink.component.wasm differ diff --git a/tests/gen/preview1_dangling_symlink.rs b/tests/gen/preview1_dangling_symlink.rs index 6c5d878ed..33fe6ece9 100644 --- a/tests/gen/preview1_dangling_symlink.rs +++ b/tests/gen/preview1_dangling_symlink.rs @@ -12,7 +12,6 @@ fn preview1_dangling_symlink() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_dangling_symlink"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_dir_fd_op_failures.component.wasm b/tests/gen/preview1_dir_fd_op_failures.component.wasm index 074656d2d..36a1a74f7 100644 Binary files a/tests/gen/preview1_dir_fd_op_failures.component.wasm and b/tests/gen/preview1_dir_fd_op_failures.component.wasm differ diff --git a/tests/gen/preview1_dir_fd_op_failures.rs b/tests/gen/preview1_dir_fd_op_failures.rs index b6d3522ba..b8f4e474a 100644 --- a/tests/gen/preview1_dir_fd_op_failures.rs +++ b/tests/gen/preview1_dir_fd_op_failures.rs @@ -12,7 +12,6 @@ fn preview1_dir_fd_op_failures() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_dir_fd_op_failures"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_directory_seek.component.wasm b/tests/gen/preview1_directory_seek.component.wasm index daa6b5578..45f7784df 100644 Binary files a/tests/gen/preview1_directory_seek.component.wasm and b/tests/gen/preview1_directory_seek.component.wasm differ diff --git a/tests/gen/preview1_directory_seek.rs b/tests/gen/preview1_directory_seek.rs index d8fbce3a6..c1dc56bf9 100644 --- a/tests/gen/preview1_directory_seek.rs +++ b/tests/gen/preview1_directory_seek.rs @@ -12,7 +12,6 @@ fn preview1_directory_seek() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_directory_seek"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_fd_advise.component.wasm b/tests/gen/preview1_fd_advise.component.wasm index 89c7fd353..6f1f0c9da 100644 Binary files a/tests/gen/preview1_fd_advise.component.wasm and b/tests/gen/preview1_fd_advise.component.wasm differ diff --git a/tests/gen/preview1_fd_advise.rs b/tests/gen/preview1_fd_advise.rs index 58f530958..4f5abe39a 100644 --- a/tests/gen/preview1_fd_advise.rs +++ b/tests/gen/preview1_fd_advise.rs @@ -12,7 +12,6 @@ fn preview1_fd_advise() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_fd_advise"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_fd_filestat_get.component.wasm b/tests/gen/preview1_fd_filestat_get.component.wasm index 6726c0395..c237287d8 100644 Binary files a/tests/gen/preview1_fd_filestat_get.component.wasm and b/tests/gen/preview1_fd_filestat_get.component.wasm differ diff --git a/tests/gen/preview1_fd_filestat_get.rs b/tests/gen/preview1_fd_filestat_get.rs index 27c1fb0d0..8836d5e2c 100644 --- a/tests/gen/preview1_fd_filestat_get.rs +++ b/tests/gen/preview1_fd_filestat_get.rs @@ -12,7 +12,6 @@ fn preview1_fd_filestat_get() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_fd_filestat_get"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_fd_filestat_set.component.wasm b/tests/gen/preview1_fd_filestat_set.component.wasm index be9a89726..7a88f2047 100644 Binary files a/tests/gen/preview1_fd_filestat_set.component.wasm and b/tests/gen/preview1_fd_filestat_set.component.wasm differ diff --git a/tests/gen/preview1_fd_filestat_set.rs b/tests/gen/preview1_fd_filestat_set.rs index 7c3c331f1..85e56fe40 100644 --- a/tests/gen/preview1_fd_filestat_set.rs +++ b/tests/gen/preview1_fd_filestat_set.rs @@ -12,7 +12,6 @@ fn preview1_fd_filestat_set() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_fd_filestat_set"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_fd_flags_set.component.wasm b/tests/gen/preview1_fd_flags_set.component.wasm index d66c23a5d..bad26b409 100644 Binary files a/tests/gen/preview1_fd_flags_set.component.wasm and b/tests/gen/preview1_fd_flags_set.component.wasm differ diff --git a/tests/gen/preview1_fd_flags_set.rs b/tests/gen/preview1_fd_flags_set.rs index 9c6f149ba..929d98e34 100644 --- a/tests/gen/preview1_fd_flags_set.rs +++ b/tests/gen/preview1_fd_flags_set.rs @@ -12,7 +12,6 @@ fn preview1_fd_flags_set() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_fd_flags_set"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_fd_readdir.component.wasm b/tests/gen/preview1_fd_readdir.component.wasm index ffb3867f5..4b62b1d68 100644 Binary files a/tests/gen/preview1_fd_readdir.component.wasm and b/tests/gen/preview1_fd_readdir.component.wasm differ diff --git a/tests/gen/preview1_fd_readdir.rs b/tests/gen/preview1_fd_readdir.rs index 124692f00..71bbcc04e 100644 --- a/tests/gen/preview1_fd_readdir.rs +++ b/tests/gen/preview1_fd_readdir.rs @@ -12,7 +12,6 @@ fn preview1_fd_readdir() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_fd_readdir"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_file_allocate.component.wasm b/tests/gen/preview1_file_allocate.component.wasm index 39bd7f84f..93dfaf5e8 100644 Binary files a/tests/gen/preview1_file_allocate.component.wasm and b/tests/gen/preview1_file_allocate.component.wasm differ diff --git a/tests/gen/preview1_file_allocate.rs b/tests/gen/preview1_file_allocate.rs index 73115828c..304d38ec9 100644 --- a/tests/gen/preview1_file_allocate.rs +++ b/tests/gen/preview1_file_allocate.rs @@ -12,7 +12,6 @@ fn preview1_file_allocate() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_file_allocate"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_file_pread_pwrite.component.wasm b/tests/gen/preview1_file_pread_pwrite.component.wasm index ab6ab6c31..91044ff00 100644 Binary files a/tests/gen/preview1_file_pread_pwrite.component.wasm and b/tests/gen/preview1_file_pread_pwrite.component.wasm differ diff --git a/tests/gen/preview1_file_pread_pwrite.rs b/tests/gen/preview1_file_pread_pwrite.rs index 3b59e4c8e..f95f54414 100644 --- a/tests/gen/preview1_file_pread_pwrite.rs +++ b/tests/gen/preview1_file_pread_pwrite.rs @@ -12,7 +12,6 @@ fn preview1_file_pread_pwrite() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_file_pread_pwrite"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_file_seek_tell.component.wasm b/tests/gen/preview1_file_seek_tell.component.wasm index fb8c52fd3..b37dcf233 100644 Binary files a/tests/gen/preview1_file_seek_tell.component.wasm and b/tests/gen/preview1_file_seek_tell.component.wasm differ diff --git a/tests/gen/preview1_file_seek_tell.rs b/tests/gen/preview1_file_seek_tell.rs index b8901df2c..f4943e4f9 100644 --- a/tests/gen/preview1_file_seek_tell.rs +++ b/tests/gen/preview1_file_seek_tell.rs @@ -12,7 +12,6 @@ fn preview1_file_seek_tell() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_file_seek_tell"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_file_truncation.component.wasm b/tests/gen/preview1_file_truncation.component.wasm index 1972d4234..daf5c5fbe 100644 Binary files a/tests/gen/preview1_file_truncation.component.wasm and b/tests/gen/preview1_file_truncation.component.wasm differ diff --git a/tests/gen/preview1_file_truncation.rs b/tests/gen/preview1_file_truncation.rs index 17c277150..5c406a6c1 100644 --- a/tests/gen/preview1_file_truncation.rs +++ b/tests/gen/preview1_file_truncation.rs @@ -12,7 +12,6 @@ fn preview1_file_truncation() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_file_truncation"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_file_unbuffered_write.component.wasm b/tests/gen/preview1_file_unbuffered_write.component.wasm index afb50e4d0..ada022e52 100644 Binary files a/tests/gen/preview1_file_unbuffered_write.component.wasm and b/tests/gen/preview1_file_unbuffered_write.component.wasm differ diff --git a/tests/gen/preview1_file_unbuffered_write.rs b/tests/gen/preview1_file_unbuffered_write.rs index 32648ef76..393532eff 100644 --- a/tests/gen/preview1_file_unbuffered_write.rs +++ b/tests/gen/preview1_file_unbuffered_write.rs @@ -12,7 +12,6 @@ fn preview1_file_unbuffered_write() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_file_unbuffered_write"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_file_write.component.wasm b/tests/gen/preview1_file_write.component.wasm index 134d8380b..477dd50a8 100644 Binary files a/tests/gen/preview1_file_write.component.wasm and b/tests/gen/preview1_file_write.component.wasm differ diff --git a/tests/gen/preview1_file_write.rs b/tests/gen/preview1_file_write.rs index e93d25d4b..6ac602a98 100644 --- a/tests/gen/preview1_file_write.rs +++ b/tests/gen/preview1_file_write.rs @@ -12,7 +12,6 @@ fn preview1_file_write() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_file_write"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_interesting_paths.component.wasm b/tests/gen/preview1_interesting_paths.component.wasm index 08ed171ff..d4fec3d4e 100644 Binary files a/tests/gen/preview1_interesting_paths.component.wasm and b/tests/gen/preview1_interesting_paths.component.wasm differ diff --git a/tests/gen/preview1_interesting_paths.rs b/tests/gen/preview1_interesting_paths.rs index 8da273af5..4be1aaec9 100644 --- a/tests/gen/preview1_interesting_paths.rs +++ b/tests/gen/preview1_interesting_paths.rs @@ -12,7 +12,6 @@ fn preview1_interesting_paths() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_interesting_paths"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_nofollow_errors.component.wasm b/tests/gen/preview1_nofollow_errors.component.wasm index b29af526c..d997fce46 100644 Binary files a/tests/gen/preview1_nofollow_errors.component.wasm and b/tests/gen/preview1_nofollow_errors.component.wasm differ diff --git a/tests/gen/preview1_nofollow_errors.rs b/tests/gen/preview1_nofollow_errors.rs index 35c279803..c5ac13b78 100644 --- a/tests/gen/preview1_nofollow_errors.rs +++ b/tests/gen/preview1_nofollow_errors.rs @@ -12,7 +12,6 @@ fn preview1_nofollow_errors() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_nofollow_errors"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_overwrite_preopen.component.wasm b/tests/gen/preview1_overwrite_preopen.component.wasm index 20d0018b7..eec57fe3a 100644 Binary files a/tests/gen/preview1_overwrite_preopen.component.wasm and b/tests/gen/preview1_overwrite_preopen.component.wasm differ diff --git a/tests/gen/preview1_overwrite_preopen.rs b/tests/gen/preview1_overwrite_preopen.rs index 6bd28f319..76509bb0b 100644 --- a/tests/gen/preview1_overwrite_preopen.rs +++ b/tests/gen/preview1_overwrite_preopen.rs @@ -12,7 +12,6 @@ fn preview1_overwrite_preopen() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_overwrite_preopen"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_path_exists.component.wasm b/tests/gen/preview1_path_exists.component.wasm index 239fb0f5b..cceb8efb8 100644 Binary files a/tests/gen/preview1_path_exists.component.wasm and b/tests/gen/preview1_path_exists.component.wasm differ diff --git a/tests/gen/preview1_path_exists.rs b/tests/gen/preview1_path_exists.rs index a3c2a21e9..81e874afc 100644 --- a/tests/gen/preview1_path_exists.rs +++ b/tests/gen/preview1_path_exists.rs @@ -12,7 +12,6 @@ fn preview1_path_exists() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_path_exists"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_path_filestat.component.wasm b/tests/gen/preview1_path_filestat.component.wasm index fb226c36c..2ffd8a8f9 100644 Binary files a/tests/gen/preview1_path_filestat.component.wasm and b/tests/gen/preview1_path_filestat.component.wasm differ diff --git a/tests/gen/preview1_path_filestat.rs b/tests/gen/preview1_path_filestat.rs index cb8ce327a..44b6d7adb 100644 --- a/tests/gen/preview1_path_filestat.rs +++ b/tests/gen/preview1_path_filestat.rs @@ -12,7 +12,6 @@ fn preview1_path_filestat() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_path_filestat"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_path_link.component.wasm b/tests/gen/preview1_path_link.component.wasm index 0429e2900..c079a9cc8 100644 Binary files a/tests/gen/preview1_path_link.component.wasm and b/tests/gen/preview1_path_link.component.wasm differ diff --git a/tests/gen/preview1_path_link.rs b/tests/gen/preview1_path_link.rs index ff286fa61..8524d4404 100644 --- a/tests/gen/preview1_path_link.rs +++ b/tests/gen/preview1_path_link.rs @@ -12,7 +12,6 @@ fn preview1_path_link() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_path_link"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_path_open_create_existing.component.wasm b/tests/gen/preview1_path_open_create_existing.component.wasm index 30f641403..d56a10e8f 100644 Binary files a/tests/gen/preview1_path_open_create_existing.component.wasm and b/tests/gen/preview1_path_open_create_existing.component.wasm differ diff --git a/tests/gen/preview1_path_open_create_existing.rs b/tests/gen/preview1_path_open_create_existing.rs index 06e8bf4b9..ee85679ad 100644 --- a/tests/gen/preview1_path_open_create_existing.rs +++ b/tests/gen/preview1_path_open_create_existing.rs @@ -12,7 +12,6 @@ fn preview1_path_open_create_existing() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_path_open_create_existing"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_path_open_dirfd_not_dir.component.wasm b/tests/gen/preview1_path_open_dirfd_not_dir.component.wasm index 179a026d5..41743c7de 100644 Binary files a/tests/gen/preview1_path_open_dirfd_not_dir.component.wasm and b/tests/gen/preview1_path_open_dirfd_not_dir.component.wasm differ diff --git a/tests/gen/preview1_path_open_dirfd_not_dir.rs b/tests/gen/preview1_path_open_dirfd_not_dir.rs index d1a5e5eb7..648564711 100644 --- a/tests/gen/preview1_path_open_dirfd_not_dir.rs +++ b/tests/gen/preview1_path_open_dirfd_not_dir.rs @@ -12,7 +12,6 @@ fn preview1_path_open_dirfd_not_dir() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_path_open_dirfd_not_dir"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_path_open_lots.component.wasm b/tests/gen/preview1_path_open_lots.component.wasm index 91251691b..f1d6301cb 100644 Binary files a/tests/gen/preview1_path_open_lots.component.wasm and b/tests/gen/preview1_path_open_lots.component.wasm differ diff --git a/tests/gen/preview1_path_open_lots.rs b/tests/gen/preview1_path_open_lots.rs index 8a250a757..13662dbe2 100644 --- a/tests/gen/preview1_path_open_lots.rs +++ b/tests/gen/preview1_path_open_lots.rs @@ -12,7 +12,6 @@ fn preview1_path_open_lots() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_path_open_lots"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_path_open_missing.component.wasm b/tests/gen/preview1_path_open_missing.component.wasm index 594f8f10d..a819fb2cd 100644 Binary files a/tests/gen/preview1_path_open_missing.component.wasm and b/tests/gen/preview1_path_open_missing.component.wasm differ diff --git a/tests/gen/preview1_path_open_missing.rs b/tests/gen/preview1_path_open_missing.rs index fe36126fa..8f0e2e187 100644 --- a/tests/gen/preview1_path_open_missing.rs +++ b/tests/gen/preview1_path_open_missing.rs @@ -12,7 +12,6 @@ fn preview1_path_open_missing() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_path_open_missing"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_path_open_nonblock.component.wasm b/tests/gen/preview1_path_open_nonblock.component.wasm index f30588fd1..73dc746a8 100644 Binary files a/tests/gen/preview1_path_open_nonblock.component.wasm and b/tests/gen/preview1_path_open_nonblock.component.wasm differ diff --git a/tests/gen/preview1_path_open_nonblock.rs b/tests/gen/preview1_path_open_nonblock.rs index 3191a616f..350a64cd3 100644 --- a/tests/gen/preview1_path_open_nonblock.rs +++ b/tests/gen/preview1_path_open_nonblock.rs @@ -12,7 +12,6 @@ fn preview1_path_open_nonblock() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_path_open_nonblock"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_path_open_preopen.component.wasm b/tests/gen/preview1_path_open_preopen.component.wasm index 87f4c6c5e..407d7051f 100644 Binary files a/tests/gen/preview1_path_open_preopen.component.wasm and b/tests/gen/preview1_path_open_preopen.component.wasm differ diff --git a/tests/gen/preview1_path_open_preopen.rs b/tests/gen/preview1_path_open_preopen.rs index 21620be62..6e1d422d8 100644 --- a/tests/gen/preview1_path_open_preopen.rs +++ b/tests/gen/preview1_path_open_preopen.rs @@ -12,7 +12,6 @@ fn preview1_path_open_preopen() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_path_open_preopen"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_path_open_read_write.component.wasm b/tests/gen/preview1_path_open_read_write.component.wasm index 876ec6454..4714425c1 100644 Binary files a/tests/gen/preview1_path_open_read_write.component.wasm and b/tests/gen/preview1_path_open_read_write.component.wasm differ diff --git a/tests/gen/preview1_path_open_read_write.rs b/tests/gen/preview1_path_open_read_write.rs index cc8322a13..d7ffd6182 100644 --- a/tests/gen/preview1_path_open_read_write.rs +++ b/tests/gen/preview1_path_open_read_write.rs @@ -12,7 +12,6 @@ fn preview1_path_open_read_write() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_path_open_read_write"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_path_rename.component.wasm b/tests/gen/preview1_path_rename.component.wasm index 5cbd4624e..ff4dbfce3 100644 Binary files a/tests/gen/preview1_path_rename.component.wasm and b/tests/gen/preview1_path_rename.component.wasm differ diff --git a/tests/gen/preview1_path_rename.rs b/tests/gen/preview1_path_rename.rs index f81d4a797..f2a64f724 100644 --- a/tests/gen/preview1_path_rename.rs +++ b/tests/gen/preview1_path_rename.rs @@ -12,7 +12,6 @@ fn preview1_path_rename() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_path_rename"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_path_rename_dir_trailing_slashes.component.wasm b/tests/gen/preview1_path_rename_dir_trailing_slashes.component.wasm index cc05a69f3..63c604120 100644 Binary files a/tests/gen/preview1_path_rename_dir_trailing_slashes.component.wasm and b/tests/gen/preview1_path_rename_dir_trailing_slashes.component.wasm differ diff --git a/tests/gen/preview1_path_rename_dir_trailing_slashes.rs b/tests/gen/preview1_path_rename_dir_trailing_slashes.rs index eb97b34f4..ccaca468c 100644 --- a/tests/gen/preview1_path_rename_dir_trailing_slashes.rs +++ b/tests/gen/preview1_path_rename_dir_trailing_slashes.rs @@ -12,7 +12,6 @@ fn preview1_path_rename_dir_trailing_slashes() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_path_rename_dir_trailing_slashes"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_path_symlink_trailing_slashes.component.wasm b/tests/gen/preview1_path_symlink_trailing_slashes.component.wasm index 47b481ae5..89e887027 100644 Binary files a/tests/gen/preview1_path_symlink_trailing_slashes.component.wasm and b/tests/gen/preview1_path_symlink_trailing_slashes.component.wasm differ diff --git a/tests/gen/preview1_path_symlink_trailing_slashes.rs b/tests/gen/preview1_path_symlink_trailing_slashes.rs index 2fc29d65c..a3b41bf13 100644 --- a/tests/gen/preview1_path_symlink_trailing_slashes.rs +++ b/tests/gen/preview1_path_symlink_trailing_slashes.rs @@ -12,7 +12,6 @@ fn preview1_path_symlink_trailing_slashes() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_path_symlink_trailing_slashes"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_poll_oneoff_files.component.wasm b/tests/gen/preview1_poll_oneoff_files.component.wasm index a7c9cd0f4..4c54e9eaa 100644 Binary files a/tests/gen/preview1_poll_oneoff_files.component.wasm and b/tests/gen/preview1_poll_oneoff_files.component.wasm differ diff --git a/tests/gen/preview1_poll_oneoff_files.rs b/tests/gen/preview1_poll_oneoff_files.rs index a73cb5b14..874d94344 100644 --- a/tests/gen/preview1_poll_oneoff_files.rs +++ b/tests/gen/preview1_poll_oneoff_files.rs @@ -12,7 +12,6 @@ fn preview1_poll_oneoff_files() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_poll_oneoff_files"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_poll_oneoff_stdio.component.wasm b/tests/gen/preview1_poll_oneoff_stdio.component.wasm index 4cd184ac2..638ac4d60 100644 Binary files a/tests/gen/preview1_poll_oneoff_stdio.component.wasm and b/tests/gen/preview1_poll_oneoff_stdio.component.wasm differ diff --git a/tests/gen/preview1_poll_oneoff_stdio.rs b/tests/gen/preview1_poll_oneoff_stdio.rs index 7a342c6ca..b76030478 100644 --- a/tests/gen/preview1_poll_oneoff_stdio.rs +++ b/tests/gen/preview1_poll_oneoff_stdio.rs @@ -12,7 +12,6 @@ fn preview1_poll_oneoff_stdio() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_poll_oneoff_stdio"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_readlink.component.wasm b/tests/gen/preview1_readlink.component.wasm index 6c6773628..dcdd1bb8f 100644 Binary files a/tests/gen/preview1_readlink.component.wasm and b/tests/gen/preview1_readlink.component.wasm differ diff --git a/tests/gen/preview1_readlink.rs b/tests/gen/preview1_readlink.rs index 0a4856b7c..ce5b4bb64 100644 --- a/tests/gen/preview1_readlink.rs +++ b/tests/gen/preview1_readlink.rs @@ -12,7 +12,6 @@ fn preview1_readlink() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_readlink"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_regular_file_isatty.component.wasm b/tests/gen/preview1_regular_file_isatty.component.wasm index 9cd4127c5..544a498c0 100644 Binary files a/tests/gen/preview1_regular_file_isatty.component.wasm and b/tests/gen/preview1_regular_file_isatty.component.wasm differ diff --git a/tests/gen/preview1_regular_file_isatty.rs b/tests/gen/preview1_regular_file_isatty.rs index 44d9416c9..191d08759 100644 --- a/tests/gen/preview1_regular_file_isatty.rs +++ b/tests/gen/preview1_regular_file_isatty.rs @@ -12,7 +12,6 @@ fn preview1_regular_file_isatty() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_regular_file_isatty"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_remove_directory.component.wasm b/tests/gen/preview1_remove_directory.component.wasm index 90e627be8..704ac910e 100644 Binary files a/tests/gen/preview1_remove_directory.component.wasm and b/tests/gen/preview1_remove_directory.component.wasm differ diff --git a/tests/gen/preview1_remove_directory.rs b/tests/gen/preview1_remove_directory.rs index 19907fd2e..6568466e1 100644 --- a/tests/gen/preview1_remove_directory.rs +++ b/tests/gen/preview1_remove_directory.rs @@ -12,7 +12,6 @@ fn preview1_remove_directory() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_remove_directory"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_remove_nonempty_directory.component.wasm b/tests/gen/preview1_remove_nonempty_directory.component.wasm index b41af6946..76e8f6cd6 100644 Binary files a/tests/gen/preview1_remove_nonempty_directory.component.wasm and b/tests/gen/preview1_remove_nonempty_directory.component.wasm differ diff --git a/tests/gen/preview1_remove_nonempty_directory.rs b/tests/gen/preview1_remove_nonempty_directory.rs index 1b28fb9ac..d72d4772b 100644 --- a/tests/gen/preview1_remove_nonempty_directory.rs +++ b/tests/gen/preview1_remove_nonempty_directory.rs @@ -12,7 +12,6 @@ fn preview1_remove_nonempty_directory() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_remove_nonempty_directory"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_renumber.component.wasm b/tests/gen/preview1_renumber.component.wasm index 3534d7acf..111b2ba67 100644 Binary files a/tests/gen/preview1_renumber.component.wasm and b/tests/gen/preview1_renumber.component.wasm differ diff --git a/tests/gen/preview1_renumber.rs b/tests/gen/preview1_renumber.rs index 21d4c9378..ccbf90584 100644 --- a/tests/gen/preview1_renumber.rs +++ b/tests/gen/preview1_renumber.rs @@ -12,7 +12,6 @@ fn preview1_renumber() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_renumber"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_sched_yield.component.wasm b/tests/gen/preview1_sched_yield.component.wasm index c07527531..7b18b43f5 100644 Binary files a/tests/gen/preview1_sched_yield.component.wasm and b/tests/gen/preview1_sched_yield.component.wasm differ diff --git a/tests/gen/preview1_sched_yield.rs b/tests/gen/preview1_sched_yield.rs index 79b1819aa..967f33e6f 100644 --- a/tests/gen/preview1_sched_yield.rs +++ b/tests/gen/preview1_sched_yield.rs @@ -12,7 +12,6 @@ fn preview1_sched_yield() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_sched_yield"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_stdio.component.wasm b/tests/gen/preview1_stdio.component.wasm index c07768356..9820d9808 100644 Binary files a/tests/gen/preview1_stdio.component.wasm and b/tests/gen/preview1_stdio.component.wasm differ diff --git a/tests/gen/preview1_stdio.rs b/tests/gen/preview1_stdio.rs index 19308dff7..8e7a1c94c 100644 --- a/tests/gen/preview1_stdio.rs +++ b/tests/gen/preview1_stdio.rs @@ -12,7 +12,6 @@ fn preview1_stdio() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_stdio"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_stdio_isatty.component.wasm b/tests/gen/preview1_stdio_isatty.component.wasm index cffab950a..a0cabfd1a 100644 Binary files a/tests/gen/preview1_stdio_isatty.component.wasm and b/tests/gen/preview1_stdio_isatty.component.wasm differ diff --git a/tests/gen/preview1_stdio_isatty.rs b/tests/gen/preview1_stdio_isatty.rs index 352dbe3df..d5e88cc28 100644 --- a/tests/gen/preview1_stdio_isatty.rs +++ b/tests/gen/preview1_stdio_isatty.rs @@ -12,7 +12,6 @@ fn preview1_stdio_isatty() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_stdio_isatty"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_stdio_not_isatty.component.wasm b/tests/gen/preview1_stdio_not_isatty.component.wasm index 97259663e..a75e0c25e 100644 Binary files a/tests/gen/preview1_stdio_not_isatty.component.wasm and b/tests/gen/preview1_stdio_not_isatty.component.wasm differ diff --git a/tests/gen/preview1_stdio_not_isatty.rs b/tests/gen/preview1_stdio_not_isatty.rs index d9eb761d3..39ef2ab28 100644 --- a/tests/gen/preview1_stdio_not_isatty.rs +++ b/tests/gen/preview1_stdio_not_isatty.rs @@ -12,7 +12,6 @@ fn preview1_stdio_not_isatty() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_stdio_not_isatty"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_symlink_create.component.wasm b/tests/gen/preview1_symlink_create.component.wasm index c8fae378e..6cf96dc50 100644 Binary files a/tests/gen/preview1_symlink_create.component.wasm and b/tests/gen/preview1_symlink_create.component.wasm differ diff --git a/tests/gen/preview1_symlink_create.rs b/tests/gen/preview1_symlink_create.rs index cf3dddccc..95f4f68f8 100644 --- a/tests/gen/preview1_symlink_create.rs +++ b/tests/gen/preview1_symlink_create.rs @@ -12,7 +12,6 @@ fn preview1_symlink_create() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_symlink_create"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_symlink_filestat.component.wasm b/tests/gen/preview1_symlink_filestat.component.wasm index a4c3e47e0..c99b0da4c 100644 Binary files a/tests/gen/preview1_symlink_filestat.component.wasm and b/tests/gen/preview1_symlink_filestat.component.wasm differ diff --git a/tests/gen/preview1_symlink_filestat.rs b/tests/gen/preview1_symlink_filestat.rs index 830787db7..d6207d124 100644 --- a/tests/gen/preview1_symlink_filestat.rs +++ b/tests/gen/preview1_symlink_filestat.rs @@ -12,7 +12,6 @@ fn preview1_symlink_filestat() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_symlink_filestat"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_symlink_loop.component.wasm b/tests/gen/preview1_symlink_loop.component.wasm index fedeaa322..b4bd42322 100644 Binary files a/tests/gen/preview1_symlink_loop.component.wasm and b/tests/gen/preview1_symlink_loop.component.wasm differ diff --git a/tests/gen/preview1_symlink_loop.rs b/tests/gen/preview1_symlink_loop.rs index eb1e9ee6a..31719ec4f 100644 --- a/tests/gen/preview1_symlink_loop.rs +++ b/tests/gen/preview1_symlink_loop.rs @@ -12,7 +12,6 @@ fn preview1_symlink_loop() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_symlink_loop"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_unicode_output.component.wasm b/tests/gen/preview1_unicode_output.component.wasm index 3ccded862..47ac8b026 100644 Binary files a/tests/gen/preview1_unicode_output.component.wasm and b/tests/gen/preview1_unicode_output.component.wasm differ diff --git a/tests/gen/preview1_unicode_output.rs b/tests/gen/preview1_unicode_output.rs index e1a18ac8e..0e0a2f16b 100644 --- a/tests/gen/preview1_unicode_output.rs +++ b/tests/gen/preview1_unicode_output.rs @@ -12,7 +12,6 @@ fn preview1_unicode_output() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_unicode_output"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview1_unlink_file_trailing_slashes.component.wasm b/tests/gen/preview1_unlink_file_trailing_slashes.component.wasm index eac59c0f6..b328efa5d 100644 Binary files a/tests/gen/preview1_unlink_file_trailing_slashes.component.wasm and b/tests/gen/preview1_unlink_file_trailing_slashes.component.wasm differ diff --git a/tests/gen/preview1_unlink_file_trailing_slashes.rs b/tests/gen/preview1_unlink_file_trailing_slashes.rs index 2d022ecfa..54340d54a 100644 --- a/tests/gen/preview1_unlink_file_trailing_slashes.rs +++ b/tests/gen/preview1_unlink_file_trailing_slashes.rs @@ -12,7 +12,6 @@ fn preview1_unlink_file_trailing_slashes() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview1_unlink_file_trailing_slashes"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview2_adapter_badfd.component.wasm b/tests/gen/preview2_adapter_badfd.component.wasm index 15256cd30..e4cb4f825 100644 Binary files a/tests/gen/preview2_adapter_badfd.component.wasm and b/tests/gen/preview2_adapter_badfd.component.wasm differ diff --git a/tests/gen/preview2_adapter_badfd.rs b/tests/gen/preview2_adapter_badfd.rs index 3f1f6619d..bf1df2512 100644 --- a/tests/gen/preview2_adapter_badfd.rs +++ b/tests/gen/preview2_adapter_badfd.rs @@ -12,7 +12,6 @@ fn preview2_adapter_badfd() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview2_adapter_badfd"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview2_ip_name_lookup.component.wasm b/tests/gen/preview2_ip_name_lookup.component.wasm index be40f2967..2f8688b49 100644 Binary files a/tests/gen/preview2_ip_name_lookup.component.wasm and b/tests/gen/preview2_ip_name_lookup.component.wasm differ diff --git a/tests/gen/preview2_ip_name_lookup.rs b/tests/gen/preview2_ip_name_lookup.rs index f3d819d99..719452c2c 100644 --- a/tests/gen/preview2_ip_name_lookup.rs +++ b/tests/gen/preview2_ip_name_lookup.rs @@ -12,7 +12,6 @@ fn preview2_ip_name_lookup() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview2_ip_name_lookup"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview2_random.component.wasm b/tests/gen/preview2_random.component.wasm index 47ea9f29f..84fc41d77 100644 Binary files a/tests/gen/preview2_random.component.wasm and b/tests/gen/preview2_random.component.wasm differ diff --git a/tests/gen/preview2_random.rs b/tests/gen/preview2_random.rs index 18dbb82cf..bf0272045 100644 --- a/tests/gen/preview2_random.rs +++ b/tests/gen/preview2_random.rs @@ -12,7 +12,6 @@ fn preview2_random() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview2_random"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview2_sleep.component.wasm b/tests/gen/preview2_sleep.component.wasm index 3aa038157..ee78fcb5f 100644 Binary files a/tests/gen/preview2_sleep.component.wasm and b/tests/gen/preview2_sleep.component.wasm differ diff --git a/tests/gen/preview2_sleep.rs b/tests/gen/preview2_sleep.rs index 508ac279c..7ca5e663a 100644 --- a/tests/gen/preview2_sleep.rs +++ b/tests/gen/preview2_sleep.rs @@ -12,7 +12,6 @@ fn preview2_sleep() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview2_sleep"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview2_stream_pollable_correct.component.wasm b/tests/gen/preview2_stream_pollable_correct.component.wasm index 98d4d5f90..6f72eb8be 100644 Binary files a/tests/gen/preview2_stream_pollable_correct.component.wasm and b/tests/gen/preview2_stream_pollable_correct.component.wasm differ diff --git a/tests/gen/preview2_stream_pollable_correct.rs b/tests/gen/preview2_stream_pollable_correct.rs index ab6ef9af1..339e593db 100644 --- a/tests/gen/preview2_stream_pollable_correct.rs +++ b/tests/gen/preview2_stream_pollable_correct.rs @@ -12,7 +12,6 @@ fn preview2_stream_pollable_correct() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview2_stream_pollable_correct"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview2_stream_pollable_traps.component.wasm b/tests/gen/preview2_stream_pollable_traps.component.wasm index 8c2ef0bc9..fb04a8865 100644 Binary files a/tests/gen/preview2_stream_pollable_traps.component.wasm and b/tests/gen/preview2_stream_pollable_traps.component.wasm differ diff --git a/tests/gen/preview2_stream_pollable_traps.rs b/tests/gen/preview2_stream_pollable_traps.rs index d39270cfd..4bbc0efdc 100644 --- a/tests/gen/preview2_stream_pollable_traps.rs +++ b/tests/gen/preview2_stream_pollable_traps.rs @@ -12,7 +12,6 @@ fn preview2_stream_pollable_traps() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview2_stream_pollable_traps"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview2_tcp_bind.component.wasm b/tests/gen/preview2_tcp_bind.component.wasm index 869ae2a02..dc8355067 100644 Binary files a/tests/gen/preview2_tcp_bind.component.wasm and b/tests/gen/preview2_tcp_bind.component.wasm differ diff --git a/tests/gen/preview2_tcp_bind.rs b/tests/gen/preview2_tcp_bind.rs index a1c5a3586..3a7d8ef4d 100644 --- a/tests/gen/preview2_tcp_bind.rs +++ b/tests/gen/preview2_tcp_bind.rs @@ -12,7 +12,6 @@ fn preview2_tcp_bind() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview2_tcp_bind"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview2_tcp_connect.component.wasm b/tests/gen/preview2_tcp_connect.component.wasm index b94887ff7..6ddb2f9a3 100644 Binary files a/tests/gen/preview2_tcp_connect.component.wasm and b/tests/gen/preview2_tcp_connect.component.wasm differ diff --git a/tests/gen/preview2_tcp_connect.rs b/tests/gen/preview2_tcp_connect.rs index d2bf5fbc4..31476ded4 100644 --- a/tests/gen/preview2_tcp_connect.rs +++ b/tests/gen/preview2_tcp_connect.rs @@ -12,7 +12,6 @@ fn preview2_tcp_connect() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview2_tcp_connect"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview2_tcp_sample_application.component.wasm b/tests/gen/preview2_tcp_sample_application.component.wasm index ba75d6e67..a5dd3e1ab 100644 Binary files a/tests/gen/preview2_tcp_sample_application.component.wasm and b/tests/gen/preview2_tcp_sample_application.component.wasm differ diff --git a/tests/gen/preview2_tcp_sample_application.rs b/tests/gen/preview2_tcp_sample_application.rs index bc84b96ff..08355da93 100644 --- a/tests/gen/preview2_tcp_sample_application.rs +++ b/tests/gen/preview2_tcp_sample_application.rs @@ -12,7 +12,6 @@ fn preview2_tcp_sample_application() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview2_tcp_sample_application"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview2_tcp_sockopts.component.wasm b/tests/gen/preview2_tcp_sockopts.component.wasm index 71ac5f65d..2ab7805e0 100644 Binary files a/tests/gen/preview2_tcp_sockopts.component.wasm and b/tests/gen/preview2_tcp_sockopts.component.wasm differ diff --git a/tests/gen/preview2_tcp_sockopts.rs b/tests/gen/preview2_tcp_sockopts.rs index 5a34c8fa7..097f363b2 100644 --- a/tests/gen/preview2_tcp_sockopts.rs +++ b/tests/gen/preview2_tcp_sockopts.rs @@ -12,7 +12,6 @@ fn preview2_tcp_sockopts() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview2_tcp_sockopts"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview2_tcp_states.component.wasm b/tests/gen/preview2_tcp_states.component.wasm index 9595a7504..f1543f5be 100644 Binary files a/tests/gen/preview2_tcp_states.component.wasm and b/tests/gen/preview2_tcp_states.component.wasm differ diff --git a/tests/gen/preview2_tcp_states.rs b/tests/gen/preview2_tcp_states.rs index 10af5f14a..2ea615c9d 100644 --- a/tests/gen/preview2_tcp_states.rs +++ b/tests/gen/preview2_tcp_states.rs @@ -12,7 +12,6 @@ fn preview2_tcp_states() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview2_tcp_states"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview2_udp_bind.component.wasm b/tests/gen/preview2_udp_bind.component.wasm index 6d4f87b28..c9868de15 100644 Binary files a/tests/gen/preview2_udp_bind.component.wasm and b/tests/gen/preview2_udp_bind.component.wasm differ diff --git a/tests/gen/preview2_udp_bind.rs b/tests/gen/preview2_udp_bind.rs index 08b9736f3..cbecb30cd 100644 --- a/tests/gen/preview2_udp_bind.rs +++ b/tests/gen/preview2_udp_bind.rs @@ -12,7 +12,6 @@ fn preview2_udp_bind() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview2_udp_bind"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview2_udp_connect.component.wasm b/tests/gen/preview2_udp_connect.component.wasm index 3190d9f37..3850dcb5f 100644 Binary files a/tests/gen/preview2_udp_connect.component.wasm and b/tests/gen/preview2_udp_connect.component.wasm differ diff --git a/tests/gen/preview2_udp_connect.rs b/tests/gen/preview2_udp_connect.rs index c77428c56..f24142871 100644 --- a/tests/gen/preview2_udp_connect.rs +++ b/tests/gen/preview2_udp_connect.rs @@ -12,7 +12,6 @@ fn preview2_udp_connect() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview2_udp_connect"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview2_udp_sample_application.component.wasm b/tests/gen/preview2_udp_sample_application.component.wasm index 5c26994ec..050d6137e 100644 Binary files a/tests/gen/preview2_udp_sample_application.component.wasm and b/tests/gen/preview2_udp_sample_application.component.wasm differ diff --git a/tests/gen/preview2_udp_sample_application.rs b/tests/gen/preview2_udp_sample_application.rs index 25f2a05b8..f2defb9c3 100644 --- a/tests/gen/preview2_udp_sample_application.rs +++ b/tests/gen/preview2_udp_sample_application.rs @@ -12,7 +12,6 @@ fn preview2_udp_sample_application() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview2_udp_sample_application"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview2_udp_sockopts.component.wasm b/tests/gen/preview2_udp_sockopts.component.wasm index 17f21b471..d5772b08d 100644 Binary files a/tests/gen/preview2_udp_sockopts.component.wasm and b/tests/gen/preview2_udp_sockopts.component.wasm differ diff --git a/tests/gen/preview2_udp_sockopts.rs b/tests/gen/preview2_udp_sockopts.rs index 1a0030779..ecd0d2ec9 100644 --- a/tests/gen/preview2_udp_sockopts.rs +++ b/tests/gen/preview2_udp_sockopts.rs @@ -12,7 +12,6 @@ fn preview2_udp_sockopts() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview2_udp_sockopts"); cmd1.arg("--jco-import"); diff --git a/tests/gen/preview2_udp_states.component.wasm b/tests/gen/preview2_udp_states.component.wasm index e07983623..c870055d9 100644 Binary files a/tests/gen/preview2_udp_states.component.wasm and b/tests/gen/preview2_udp_states.component.wasm differ diff --git a/tests/gen/preview2_udp_states.rs b/tests/gen/preview2_udp_states.rs index b6fea5a3a..e40b5f2d8 100644 --- a/tests/gen/preview2_udp_states.rs +++ b/tests/gen/preview2_udp_states.rs @@ -12,7 +12,6 @@ fn preview2_udp_states() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/preview2_udp_states"); cmd1.arg("--jco-import"); diff --git a/tests/gen/proxy_echo.component.wasm b/tests/gen/proxy_echo.component.wasm index fdaf7d494..08687c75c 100644 Binary files a/tests/gen/proxy_echo.component.wasm and b/tests/gen/proxy_echo.component.wasm differ diff --git a/tests/gen/proxy_echo.rs b/tests/gen/proxy_echo.rs index 429f28142..3f021e71b 100644 --- a/tests/gen/proxy_echo.rs +++ b/tests/gen/proxy_echo.rs @@ -12,7 +12,6 @@ fn proxy_echo() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/proxy_echo"); cmd1.arg("--jco-import"); diff --git a/tests/gen/proxy_handler.component.wasm b/tests/gen/proxy_handler.component.wasm index 815efd242..c215f84c6 100644 Binary files a/tests/gen/proxy_handler.component.wasm and b/tests/gen/proxy_handler.component.wasm differ diff --git a/tests/gen/proxy_handler.rs b/tests/gen/proxy_handler.rs index 7ae1334eb..460bceb45 100644 --- a/tests/gen/proxy_handler.rs +++ b/tests/gen/proxy_handler.rs @@ -12,7 +12,6 @@ fn proxy_handler() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/proxy_handler"); cmd1.arg("--jco-import"); diff --git a/tests/gen/proxy_hash.component.wasm b/tests/gen/proxy_hash.component.wasm index 99b31dfdf..67e3064c0 100644 Binary files a/tests/gen/proxy_hash.component.wasm and b/tests/gen/proxy_hash.component.wasm differ diff --git a/tests/gen/proxy_hash.rs b/tests/gen/proxy_hash.rs index 8e7f231ed..59a6227bd 100644 --- a/tests/gen/proxy_hash.rs +++ b/tests/gen/proxy_hash.rs @@ -12,7 +12,6 @@ fn proxy_hash() -> anyhow::Result<()> { let mut cmd1 = Command::new("node"); cmd1.arg("./src/jco.js"); cmd1.arg("run"); - cmd1.arg("--jco-dir"); cmd1.arg("./tests/rundir/proxy_hash"); cmd1.arg("--jco-import"); diff --git a/tests/generated/api_proxy.rs b/tests/generated/api_proxy.rs new file mode 100644 index 000000000..1adf303e2 --- /dev/null +++ b/tests/generated/api_proxy.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn api_proxy() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "api_proxy"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/api_proxy"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/api_proxy --jco-import ./tests/virtualenvs/base.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/api_proxy_streaming.rs b/tests/generated/api_proxy_streaming.rs new file mode 100644 index 000000000..6e8339902 --- /dev/null +++ b/tests/generated/api_proxy_streaming.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn api_proxy_streaming() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "api_proxy_streaming"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/api_proxy_streaming"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/api_proxy_streaming --jco-import ./tests/virtualenvs/base.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/api_reactor.rs b/tests/generated/api_reactor.rs new file mode 100644 index 000000000..2d62d81ba --- /dev/null +++ b/tests/generated/api_reactor.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn api_reactor() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "api_reactor"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/api_reactor"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/api_reactor --jco-import ./tests/virtualenvs/base.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/api_read_only.rs b/tests/generated/api_read_only.rs new file mode 100644 index 000000000..3282fe2b0 --- /dev/null +++ b/tests/generated/api_read_only.rs @@ -0,0 +1,20 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +// use tempdir::TempDir; +// use xshell::{cmd, Shell}; + +#[test] +fn api_read_only() -> anyhow::Result<()> { + // let sh = Shell::new()?; + // let file_name = "api_read_only"; + // let tempdir = TempDir::new("{file_name}")?; + // let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/api_read_only"); + + // let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/api_read_only --jco-import ./tests/virtualenvs/base.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + // let cmd = cmd.env("JCO_RUN_PATH", "deno").env("JCO_RUN_ARGS", "run --importmap importmap.json -A");cmd.run()?; + panic!("skipped"); // Ok(()) +} diff --git a/tests/generated/api_time.rs b/tests/generated/api_time.rs new file mode 100644 index 000000000..35f50519a --- /dev/null +++ b/tests/generated/api_time.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn api_time() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "api_time"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/api_time"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/api_time --jco-import ./tests/virtualenvs/fakeclocks.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/cli_args.rs b/tests/generated/cli_args.rs new file mode 100644 index 000000000..f0a7cabc4 --- /dev/null +++ b/tests/generated/cli_args.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn cli_args() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "cli_args"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/cli_args"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/cli_args --jco-import ./tests/virtualenvs/base.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/cli_default_clocks.rs b/tests/generated/cli_default_clocks.rs new file mode 100644 index 000000000..1d53d2abc --- /dev/null +++ b/tests/generated/cli_default_clocks.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn cli_default_clocks() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "cli_default_clocks"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/cli_default_clocks"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/cli_default_clocks --jco-import ./tests/virtualenvs/base.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/cli_directory_list.rs b/tests/generated/cli_directory_list.rs new file mode 100644 index 000000000..4e1386b43 --- /dev/null +++ b/tests/generated/cli_directory_list.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn cli_directory_list() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "cli_directory_list"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/cli_directory_list"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/cli_directory_list --jco-import ./tests/virtualenvs/base.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/cli_env.rs b/tests/generated/cli_env.rs new file mode 100644 index 000000000..51a41254c --- /dev/null +++ b/tests/generated/cli_env.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn cli_env() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "cli_env"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/cli_env"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/cli_env --jco-import ./tests/virtualenvs/base.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/cli_exit_default.rs b/tests/generated/cli_exit_default.rs new file mode 100644 index 000000000..02d12ac81 --- /dev/null +++ b/tests/generated/cli_exit_default.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn cli_exit_default() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "cli_exit_default"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/cli_exit_default"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/cli_exit_default --jco-import ./tests/virtualenvs/base.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/cli_exit_failure.rs b/tests/generated/cli_exit_failure.rs new file mode 100644 index 000000000..f49a0d690 --- /dev/null +++ b/tests/generated/cli_exit_failure.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn cli_exit_failure() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "cli_exit_failure"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/cli_exit_failure"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/cli_exit_failure --jco-import ./tests/virtualenvs/base.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run().expect_err("test should exit with code 1"); + Ok(()) +} diff --git a/tests/generated/cli_exit_panic.rs b/tests/generated/cli_exit_panic.rs new file mode 100644 index 000000000..2495c6497 --- /dev/null +++ b/tests/generated/cli_exit_panic.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn cli_exit_panic() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "cli_exit_panic"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/cli_exit_panic"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/cli_exit_panic --jco-import ./tests/virtualenvs/base.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run().expect_err("test should exit with code 1"); + Ok(()) +} diff --git a/tests/generated/cli_exit_success.rs b/tests/generated/cli_exit_success.rs new file mode 100644 index 000000000..fef9e9280 --- /dev/null +++ b/tests/generated/cli_exit_success.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn cli_exit_success() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "cli_exit_success"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/cli_exit_success"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/cli_exit_success --jco-import ./tests/virtualenvs/base.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/cli_export_cabi_realloc.rs b/tests/generated/cli_export_cabi_realloc.rs new file mode 100644 index 000000000..a33f9106e --- /dev/null +++ b/tests/generated/cli_export_cabi_realloc.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn cli_export_cabi_realloc() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "cli_export_cabi_realloc"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/cli_export_cabi_realloc"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/cli_export_cabi_realloc --jco-import ./tests/virtualenvs/base.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/cli_file_append.rs b/tests/generated/cli_file_append.rs new file mode 100644 index 000000000..f3b4a98c7 --- /dev/null +++ b/tests/generated/cli_file_append.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn cli_file_append() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "cli_file_append"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/cli_file_append"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/cli_file_append --jco-import ./tests/virtualenvs/bar-jabberwock.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/cli_file_dir_sync.rs b/tests/generated/cli_file_dir_sync.rs new file mode 100644 index 000000000..7903d54d0 --- /dev/null +++ b/tests/generated/cli_file_dir_sync.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn cli_file_dir_sync() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "cli_file_dir_sync"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/cli_file_dir_sync"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/cli_file_dir_sync --jco-import ./tests/virtualenvs/base.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/cli_file_read.rs b/tests/generated/cli_file_read.rs new file mode 100644 index 000000000..231548b1e --- /dev/null +++ b/tests/generated/cli_file_read.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn cli_file_read() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "cli_file_read"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/cli_file_read"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/cli_file_read --jco-import ./tests/virtualenvs/base.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/cli_hello_stdout.rs b/tests/generated/cli_hello_stdout.rs new file mode 100644 index 000000000..ecff4a299 --- /dev/null +++ b/tests/generated/cli_hello_stdout.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn cli_hello_stdout() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "cli_hello_stdout"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/cli_hello_stdout"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/cli_hello_stdout --jco-import ./tests/virtualenvs/base.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/cli_splice_stdin.rs b/tests/generated/cli_splice_stdin.rs new file mode 100644 index 000000000..8b66dd277 --- /dev/null +++ b/tests/generated/cli_splice_stdin.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn cli_splice_stdin() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "cli_splice_stdin"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/cli_splice_stdin"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/cli_splice_stdin --jco-import ./tests/virtualenvs/base.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/cli_stdin.rs b/tests/generated/cli_stdin.rs new file mode 100644 index 000000000..1dd5641c7 --- /dev/null +++ b/tests/generated/cli_stdin.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn cli_stdin() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "cli_stdin"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/cli_stdin"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/cli_stdin --jco-import ./tests/virtualenvs/base.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + let cmd = cmd.stdin(b"So rested he by the Tumtum tree"); + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/cli_stdio_write_flushes.rs b/tests/generated/cli_stdio_write_flushes.rs new file mode 100644 index 000000000..f9e5f5054 --- /dev/null +++ b/tests/generated/cli_stdio_write_flushes.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn cli_stdio_write_flushes() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "cli_stdio_write_flushes"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/cli_stdio_write_flushes"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/cli_stdio_write_flushes --jco-import ./tests/virtualenvs/base.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/http_outbound_request_content_length.rs b/tests/generated/http_outbound_request_content_length.rs new file mode 100644 index 000000000..f72fcfaed --- /dev/null +++ b/tests/generated/http_outbound_request_content_length.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn http_outbound_request_content_length() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "http_outbound_request_content_length"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/http_outbound_request_content_length"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/http_outbound_request_content_length --jco-import ./tests/virtualenvs/http.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/http_outbound_request_get.rs b/tests/generated/http_outbound_request_get.rs new file mode 100644 index 000000000..2e1be5913 --- /dev/null +++ b/tests/generated/http_outbound_request_get.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn http_outbound_request_get() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "http_outbound_request_get"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/http_outbound_request_get"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/http_outbound_request_get --jco-import ./tests/virtualenvs/http.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/http_outbound_request_invalid_dnsname.rs b/tests/generated/http_outbound_request_invalid_dnsname.rs new file mode 100644 index 000000000..84d21f167 --- /dev/null +++ b/tests/generated/http_outbound_request_invalid_dnsname.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn http_outbound_request_invalid_dnsname() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "http_outbound_request_invalid_dnsname"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/http_outbound_request_invalid_dnsname"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/http_outbound_request_invalid_dnsname --jco-import ./tests/virtualenvs/http.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/http_outbound_request_invalid_header.rs b/tests/generated/http_outbound_request_invalid_header.rs new file mode 100644 index 000000000..49922ac8d --- /dev/null +++ b/tests/generated/http_outbound_request_invalid_header.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn http_outbound_request_invalid_header() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "http_outbound_request_invalid_header"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/http_outbound_request_invalid_header"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/http_outbound_request_invalid_header --jco-import ./tests/virtualenvs/http.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/http_outbound_request_invalid_port.rs b/tests/generated/http_outbound_request_invalid_port.rs new file mode 100644 index 000000000..1b64923ce --- /dev/null +++ b/tests/generated/http_outbound_request_invalid_port.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn http_outbound_request_invalid_port() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "http_outbound_request_invalid_port"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/http_outbound_request_invalid_port"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/http_outbound_request_invalid_port --jco-import ./tests/virtualenvs/http.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/http_outbound_request_invalid_version.rs b/tests/generated/http_outbound_request_invalid_version.rs new file mode 100644 index 000000000..513050f30 --- /dev/null +++ b/tests/generated/http_outbound_request_invalid_version.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn http_outbound_request_invalid_version() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "http_outbound_request_invalid_version"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/http_outbound_request_invalid_version"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/http_outbound_request_invalid_version --jco-import ./tests/virtualenvs/http.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/http_outbound_request_large_post.rs b/tests/generated/http_outbound_request_large_post.rs new file mode 100644 index 000000000..2de24188b --- /dev/null +++ b/tests/generated/http_outbound_request_large_post.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn http_outbound_request_large_post() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "http_outbound_request_large_post"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/http_outbound_request_large_post"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/http_outbound_request_large_post --jco-import ./tests/virtualenvs/http.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/http_outbound_request_post.rs b/tests/generated/http_outbound_request_post.rs new file mode 100644 index 000000000..576437fa1 --- /dev/null +++ b/tests/generated/http_outbound_request_post.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn http_outbound_request_post() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "http_outbound_request_post"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/http_outbound_request_post"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/http_outbound_request_post --jco-import ./tests/virtualenvs/http.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/http_outbound_request_put.rs b/tests/generated/http_outbound_request_put.rs new file mode 100644 index 000000000..c03e73952 --- /dev/null +++ b/tests/generated/http_outbound_request_put.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn http_outbound_request_put() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "http_outbound_request_put"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/http_outbound_request_put"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/http_outbound_request_put --jco-import ./tests/virtualenvs/http.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/http_outbound_request_response_build.rs b/tests/generated/http_outbound_request_response_build.rs new file mode 100644 index 000000000..430e70c9d --- /dev/null +++ b/tests/generated/http_outbound_request_response_build.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn http_outbound_request_response_build() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "http_outbound_request_response_build"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/http_outbound_request_response_build"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/http_outbound_request_response_build --jco-import ./tests/virtualenvs/http.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/http_outbound_request_unknown_method.rs b/tests/generated/http_outbound_request_unknown_method.rs new file mode 100644 index 000000000..0295838b3 --- /dev/null +++ b/tests/generated/http_outbound_request_unknown_method.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn http_outbound_request_unknown_method() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "http_outbound_request_unknown_method"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/http_outbound_request_unknown_method"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/http_outbound_request_unknown_method --jco-import ./tests/virtualenvs/http.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/http_outbound_request_unsupported_scheme.rs b/tests/generated/http_outbound_request_unsupported_scheme.rs new file mode 100644 index 000000000..c59efbd91 --- /dev/null +++ b/tests/generated/http_outbound_request_unsupported_scheme.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn http_outbound_request_unsupported_scheme() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "http_outbound_request_unsupported_scheme"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/http_outbound_request_unsupported_scheme"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/http_outbound_request_unsupported_scheme --jco-import ./tests/virtualenvs/http.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_big_random_buf.rs b/tests/generated/preview1_big_random_buf.rs new file mode 100644 index 000000000..ce7c1fa55 --- /dev/null +++ b/tests/generated/preview1_big_random_buf.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_big_random_buf() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_big_random_buf"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_big_random_buf"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_big_random_buf --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_clock_time_get.rs b/tests/generated/preview1_clock_time_get.rs new file mode 100644 index 000000000..8f86dd712 --- /dev/null +++ b/tests/generated/preview1_clock_time_get.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_clock_time_get() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_clock_time_get"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_clock_time_get"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_clock_time_get --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_close_preopen.rs b/tests/generated/preview1_close_preopen.rs new file mode 100644 index 000000000..a0ce6d4e2 --- /dev/null +++ b/tests/generated/preview1_close_preopen.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_close_preopen() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_close_preopen"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_close_preopen"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_close_preopen --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_dangling_fd.rs b/tests/generated/preview1_dangling_fd.rs new file mode 100644 index 000000000..038abcffd --- /dev/null +++ b/tests/generated/preview1_dangling_fd.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_dangling_fd() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_dangling_fd"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_dangling_fd"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_dangling_fd --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_dangling_symlink.rs b/tests/generated/preview1_dangling_symlink.rs new file mode 100644 index 000000000..1f6107013 --- /dev/null +++ b/tests/generated/preview1_dangling_symlink.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_dangling_symlink() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_dangling_symlink"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_dangling_symlink"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_dangling_symlink --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_dir_fd_op_failures.rs b/tests/generated/preview1_dir_fd_op_failures.rs new file mode 100644 index 000000000..8ce3d3602 --- /dev/null +++ b/tests/generated/preview1_dir_fd_op_failures.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_dir_fd_op_failures() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_dir_fd_op_failures"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_dir_fd_op_failures"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_dir_fd_op_failures --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_directory_seek.rs b/tests/generated/preview1_directory_seek.rs new file mode 100644 index 000000000..1b79268a4 --- /dev/null +++ b/tests/generated/preview1_directory_seek.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_directory_seek() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_directory_seek"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_directory_seek"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_directory_seek --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_fd_advise.rs b/tests/generated/preview1_fd_advise.rs new file mode 100644 index 000000000..174752d46 --- /dev/null +++ b/tests/generated/preview1_fd_advise.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_fd_advise() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_fd_advise"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_fd_advise"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_fd_advise --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_fd_filestat_get.rs b/tests/generated/preview1_fd_filestat_get.rs new file mode 100644 index 000000000..132a39bbf --- /dev/null +++ b/tests/generated/preview1_fd_filestat_get.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_fd_filestat_get() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_fd_filestat_get"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_fd_filestat_get"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_fd_filestat_get --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_fd_filestat_set.rs b/tests/generated/preview1_fd_filestat_set.rs new file mode 100644 index 000000000..eeb4517a2 --- /dev/null +++ b/tests/generated/preview1_fd_filestat_set.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_fd_filestat_set() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_fd_filestat_set"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_fd_filestat_set"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_fd_filestat_set --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_fd_flags_set.rs b/tests/generated/preview1_fd_flags_set.rs new file mode 100644 index 000000000..6d1990898 --- /dev/null +++ b/tests/generated/preview1_fd_flags_set.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_fd_flags_set() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_fd_flags_set"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_fd_flags_set"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_fd_flags_set --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_fd_readdir.rs b/tests/generated/preview1_fd_readdir.rs new file mode 100644 index 000000000..bdd56e86c --- /dev/null +++ b/tests/generated/preview1_fd_readdir.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_fd_readdir() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_fd_readdir"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_fd_readdir"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_fd_readdir --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_file_allocate.rs b/tests/generated/preview1_file_allocate.rs new file mode 100644 index 000000000..a8ba2a443 --- /dev/null +++ b/tests/generated/preview1_file_allocate.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_file_allocate() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_file_allocate"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_file_allocate"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_file_allocate --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_file_pread_pwrite.rs b/tests/generated/preview1_file_pread_pwrite.rs new file mode 100644 index 000000000..3a0b69d39 --- /dev/null +++ b/tests/generated/preview1_file_pread_pwrite.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_file_pread_pwrite() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_file_pread_pwrite"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_file_pread_pwrite"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_file_pread_pwrite --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_file_seek_tell.rs b/tests/generated/preview1_file_seek_tell.rs new file mode 100644 index 000000000..049f14326 --- /dev/null +++ b/tests/generated/preview1_file_seek_tell.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_file_seek_tell() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_file_seek_tell"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_file_seek_tell"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_file_seek_tell --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_file_truncation.rs b/tests/generated/preview1_file_truncation.rs new file mode 100644 index 000000000..71b72c8dd --- /dev/null +++ b/tests/generated/preview1_file_truncation.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_file_truncation() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_file_truncation"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_file_truncation"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_file_truncation --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_file_unbuffered_write.rs b/tests/generated/preview1_file_unbuffered_write.rs new file mode 100644 index 000000000..642677a70 --- /dev/null +++ b/tests/generated/preview1_file_unbuffered_write.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_file_unbuffered_write() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_file_unbuffered_write"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_file_unbuffered_write"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_file_unbuffered_write --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_file_write.rs b/tests/generated/preview1_file_write.rs new file mode 100644 index 000000000..b6e8fc633 --- /dev/null +++ b/tests/generated/preview1_file_write.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_file_write() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_file_write"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_file_write"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_file_write --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_interesting_paths.rs b/tests/generated/preview1_interesting_paths.rs new file mode 100644 index 000000000..8dd19c495 --- /dev/null +++ b/tests/generated/preview1_interesting_paths.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_interesting_paths() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_interesting_paths"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_interesting_paths"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_interesting_paths --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_nofollow_errors.rs b/tests/generated/preview1_nofollow_errors.rs new file mode 100644 index 000000000..7641aaf53 --- /dev/null +++ b/tests/generated/preview1_nofollow_errors.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_nofollow_errors() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_nofollow_errors"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_nofollow_errors"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_nofollow_errors --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_overwrite_preopen.rs b/tests/generated/preview1_overwrite_preopen.rs new file mode 100644 index 000000000..3ec62c0a8 --- /dev/null +++ b/tests/generated/preview1_overwrite_preopen.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_overwrite_preopen() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_overwrite_preopen"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_overwrite_preopen"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_overwrite_preopen --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_path_exists.rs b/tests/generated/preview1_path_exists.rs new file mode 100644 index 000000000..d7b7fae5a --- /dev/null +++ b/tests/generated/preview1_path_exists.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_path_exists() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_path_exists"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_path_exists"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_path_exists --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_path_filestat.rs b/tests/generated/preview1_path_filestat.rs new file mode 100644 index 000000000..3b25537f0 --- /dev/null +++ b/tests/generated/preview1_path_filestat.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_path_filestat() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_path_filestat"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_path_filestat"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_path_filestat --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_path_link.rs b/tests/generated/preview1_path_link.rs new file mode 100644 index 000000000..177033fc4 --- /dev/null +++ b/tests/generated/preview1_path_link.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_path_link() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_path_link"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_path_link"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_path_link --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_path_open_create_existing.rs b/tests/generated/preview1_path_open_create_existing.rs new file mode 100644 index 000000000..23dde7107 --- /dev/null +++ b/tests/generated/preview1_path_open_create_existing.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_path_open_create_existing() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_path_open_create_existing"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_path_open_create_existing"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_path_open_create_existing --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_path_open_dirfd_not_dir.rs b/tests/generated/preview1_path_open_dirfd_not_dir.rs new file mode 100644 index 000000000..df82f76dd --- /dev/null +++ b/tests/generated/preview1_path_open_dirfd_not_dir.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_path_open_dirfd_not_dir() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_path_open_dirfd_not_dir"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_path_open_dirfd_not_dir"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_path_open_dirfd_not_dir --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_path_open_missing.rs b/tests/generated/preview1_path_open_missing.rs new file mode 100644 index 000000000..9ca0e97d9 --- /dev/null +++ b/tests/generated/preview1_path_open_missing.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_path_open_missing() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_path_open_missing"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_path_open_missing"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_path_open_missing --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_path_open_nonblock.rs b/tests/generated/preview1_path_open_nonblock.rs new file mode 100644 index 000000000..a31c1396b --- /dev/null +++ b/tests/generated/preview1_path_open_nonblock.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_path_open_nonblock() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_path_open_nonblock"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_path_open_nonblock"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_path_open_nonblock --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_path_open_preopen.rs b/tests/generated/preview1_path_open_preopen.rs new file mode 100644 index 000000000..a79fe37c8 --- /dev/null +++ b/tests/generated/preview1_path_open_preopen.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_path_open_preopen() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_path_open_preopen"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_path_open_preopen"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_path_open_preopen --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_path_open_read_write.rs b/tests/generated/preview1_path_open_read_write.rs new file mode 100644 index 000000000..d984108be --- /dev/null +++ b/tests/generated/preview1_path_open_read_write.rs @@ -0,0 +1,20 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +// use tempdir::TempDir; +// use xshell::{cmd, Shell}; + +#[test] +fn preview1_path_open_read_write() -> anyhow::Result<()> { + // let sh = Shell::new()?; + // let file_name = "preview1_path_open_read_write"; + // let tempdir = TempDir::new("{file_name}")?; + // let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_path_open_read_write"); + + // let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_path_open_read_write --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + // let cmd = cmd.env("JCO_RUN_PATH", "deno").env("JCO_RUN_ARGS", "run --importmap importmap.json -A");cmd.run()?; + panic!("skipped"); // Ok(()) +} diff --git a/tests/generated/preview1_path_rename.rs b/tests/generated/preview1_path_rename.rs new file mode 100644 index 000000000..1513e5ab2 --- /dev/null +++ b/tests/generated/preview1_path_rename.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_path_rename() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_path_rename"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_path_rename"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_path_rename --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_path_rename_dir_trailing_slashes.rs b/tests/generated/preview1_path_rename_dir_trailing_slashes.rs new file mode 100644 index 000000000..9ea851cc0 --- /dev/null +++ b/tests/generated/preview1_path_rename_dir_trailing_slashes.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_path_rename_dir_trailing_slashes() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_path_rename_dir_trailing_slashes"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_path_rename_dir_trailing_slashes"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_path_rename_dir_trailing_slashes --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_path_symlink_trailing_slashes.rs b/tests/generated/preview1_path_symlink_trailing_slashes.rs new file mode 100644 index 000000000..5c3b44879 --- /dev/null +++ b/tests/generated/preview1_path_symlink_trailing_slashes.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_path_symlink_trailing_slashes() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_path_symlink_trailing_slashes"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_path_symlink_trailing_slashes"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_path_symlink_trailing_slashes --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_poll_oneoff_files.rs b/tests/generated/preview1_poll_oneoff_files.rs new file mode 100644 index 000000000..247c0197d --- /dev/null +++ b/tests/generated/preview1_poll_oneoff_files.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_poll_oneoff_files() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_poll_oneoff_files"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_poll_oneoff_files"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_poll_oneoff_files --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_poll_oneoff_stdio.rs b/tests/generated/preview1_poll_oneoff_stdio.rs new file mode 100644 index 000000000..489990aed --- /dev/null +++ b/tests/generated/preview1_poll_oneoff_stdio.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_poll_oneoff_stdio() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_poll_oneoff_stdio"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_poll_oneoff_stdio"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_poll_oneoff_stdio --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_readlink.rs b/tests/generated/preview1_readlink.rs new file mode 100644 index 000000000..cf9856271 --- /dev/null +++ b/tests/generated/preview1_readlink.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_readlink() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_readlink"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_readlink"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_readlink --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_regular_file_isatty.rs b/tests/generated/preview1_regular_file_isatty.rs new file mode 100644 index 000000000..4e3b2f276 --- /dev/null +++ b/tests/generated/preview1_regular_file_isatty.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_regular_file_isatty() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_regular_file_isatty"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_regular_file_isatty"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_regular_file_isatty --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_remove_directory.rs b/tests/generated/preview1_remove_directory.rs new file mode 100644 index 000000000..9d7e73abf --- /dev/null +++ b/tests/generated/preview1_remove_directory.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_remove_directory() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_remove_directory"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_remove_directory"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_remove_directory --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_remove_nonempty_directory.rs b/tests/generated/preview1_remove_nonempty_directory.rs new file mode 100644 index 000000000..2076f03c6 --- /dev/null +++ b/tests/generated/preview1_remove_nonempty_directory.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_remove_nonempty_directory() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_remove_nonempty_directory"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_remove_nonempty_directory"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_remove_nonempty_directory --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_renumber.rs b/tests/generated/preview1_renumber.rs new file mode 100644 index 000000000..93ed6ebc3 --- /dev/null +++ b/tests/generated/preview1_renumber.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_renumber() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_renumber"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_renumber"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_renumber --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_sched_yield.rs b/tests/generated/preview1_sched_yield.rs new file mode 100644 index 000000000..4db2f74f2 --- /dev/null +++ b/tests/generated/preview1_sched_yield.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_sched_yield() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_sched_yield"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_sched_yield"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_sched_yield --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_stdio.rs b/tests/generated/preview1_stdio.rs new file mode 100644 index 000000000..937cff175 --- /dev/null +++ b/tests/generated/preview1_stdio.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_stdio() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_stdio"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_stdio"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_stdio --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_stdio_isatty.rs b/tests/generated/preview1_stdio_isatty.rs new file mode 100644 index 000000000..4502e3bac --- /dev/null +++ b/tests/generated/preview1_stdio_isatty.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_stdio_isatty() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_stdio_isatty"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_stdio_isatty"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_stdio_isatty --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_stdio_not_isatty.rs b/tests/generated/preview1_stdio_not_isatty.rs new file mode 100644 index 000000000..3c85bcd92 --- /dev/null +++ b/tests/generated/preview1_stdio_not_isatty.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_stdio_not_isatty() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_stdio_not_isatty"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_stdio_not_isatty"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_stdio_not_isatty --jco-import ./tests/virtualenvs/notty.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_symlink_create.rs b/tests/generated/preview1_symlink_create.rs new file mode 100644 index 000000000..937bfab82 --- /dev/null +++ b/tests/generated/preview1_symlink_create.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_symlink_create() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_symlink_create"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_symlink_create"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_symlink_create --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_symlink_filestat.rs b/tests/generated/preview1_symlink_filestat.rs new file mode 100644 index 000000000..d7cc811bc --- /dev/null +++ b/tests/generated/preview1_symlink_filestat.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_symlink_filestat() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_symlink_filestat"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_symlink_filestat"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_symlink_filestat --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_symlink_loop.rs b/tests/generated/preview1_symlink_loop.rs new file mode 100644 index 000000000..c44c9c8dc --- /dev/null +++ b/tests/generated/preview1_symlink_loop.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_symlink_loop() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_symlink_loop"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_symlink_loop"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_symlink_loop --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_unicode_output.rs b/tests/generated/preview1_unicode_output.rs new file mode 100644 index 000000000..e3b2c7885 --- /dev/null +++ b/tests/generated/preview1_unicode_output.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_unicode_output() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_unicode_output"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_unicode_output"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_unicode_output --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview1_unlink_file_trailing_slashes.rs b/tests/generated/preview1_unlink_file_trailing_slashes.rs new file mode 100644 index 000000000..ef29409b2 --- /dev/null +++ b/tests/generated/preview1_unlink_file_trailing_slashes.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview1_unlink_file_trailing_slashes() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview1_unlink_file_trailing_slashes"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview1_unlink_file_trailing_slashes"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview1_unlink_file_trailing_slashes --jco-import ./tests/virtualenvs/scratch.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview2_ip_name_lookup.rs b/tests/generated/preview2_ip_name_lookup.rs new file mode 100644 index 000000000..52c108071 --- /dev/null +++ b/tests/generated/preview2_ip_name_lookup.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview2_ip_name_lookup() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview2_ip_name_lookup"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview2_ip_name_lookup"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview2_ip_name_lookup --jco-import ./tests/virtualenvs/base.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview2_random.rs b/tests/generated/preview2_random.rs new file mode 100644 index 000000000..82dad2192 --- /dev/null +++ b/tests/generated/preview2_random.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview2_random() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview2_random"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview2_random"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview2_random --jco-import ./tests/virtualenvs/base.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview2_sleep.rs b/tests/generated/preview2_sleep.rs new file mode 100644 index 000000000..4bc10a036 --- /dev/null +++ b/tests/generated/preview2_sleep.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview2_sleep() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview2_sleep"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview2_sleep"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview2_sleep --jco-import ./tests/virtualenvs/base.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview2_stream_pollable_correct.rs b/tests/generated/preview2_stream_pollable_correct.rs new file mode 100644 index 000000000..ba13434b7 --- /dev/null +++ b/tests/generated/preview2_stream_pollable_correct.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview2_stream_pollable_correct() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview2_stream_pollable_correct"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview2_stream_pollable_correct"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview2_stream_pollable_correct --jco-import ./tests/virtualenvs/base.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview2_stream_pollable_traps.rs b/tests/generated/preview2_stream_pollable_traps.rs new file mode 100644 index 000000000..dc45a34cd --- /dev/null +++ b/tests/generated/preview2_stream_pollable_traps.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview2_stream_pollable_traps() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview2_stream_pollable_traps"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview2_stream_pollable_traps"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview2_stream_pollable_traps --jco-import ./tests/virtualenvs/base.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run().expect_err("test should exit with code 1"); + Ok(()) +} diff --git a/tests/generated/preview2_tcp_bind.rs b/tests/generated/preview2_tcp_bind.rs new file mode 100644 index 000000000..228b83e73 --- /dev/null +++ b/tests/generated/preview2_tcp_bind.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview2_tcp_bind() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview2_tcp_bind"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview2_tcp_bind"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview2_tcp_bind --jco-import ./tests/virtualenvs/base.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview2_tcp_connect.rs b/tests/generated/preview2_tcp_connect.rs new file mode 100644 index 000000000..19c4a3ac6 --- /dev/null +++ b/tests/generated/preview2_tcp_connect.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview2_tcp_connect() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview2_tcp_connect"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview2_tcp_connect"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview2_tcp_connect --jco-import ./tests/virtualenvs/base.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview2_tcp_sample_application.rs b/tests/generated/preview2_tcp_sample_application.rs new file mode 100644 index 000000000..4600aa3fe --- /dev/null +++ b/tests/generated/preview2_tcp_sample_application.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview2_tcp_sample_application() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview2_tcp_sample_application"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview2_tcp_sample_application"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview2_tcp_sample_application --jco-import ./tests/virtualenvs/base.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview2_tcp_sockopts.rs b/tests/generated/preview2_tcp_sockopts.rs new file mode 100644 index 000000000..db6b71c3e --- /dev/null +++ b/tests/generated/preview2_tcp_sockopts.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview2_tcp_sockopts() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview2_tcp_sockopts"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview2_tcp_sockopts"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview2_tcp_sockopts --jco-import ./tests/virtualenvs/base.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview2_tcp_states.rs b/tests/generated/preview2_tcp_states.rs new file mode 100644 index 000000000..9cf42a39f --- /dev/null +++ b/tests/generated/preview2_tcp_states.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview2_tcp_states() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview2_tcp_states"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview2_tcp_states"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview2_tcp_states --jco-import ./tests/virtualenvs/base.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview2_udp_bind.rs b/tests/generated/preview2_udp_bind.rs new file mode 100644 index 000000000..cefd152d1 --- /dev/null +++ b/tests/generated/preview2_udp_bind.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview2_udp_bind() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview2_udp_bind"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview2_udp_bind"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview2_udp_bind --jco-import ./tests/virtualenvs/base.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview2_udp_connect.rs b/tests/generated/preview2_udp_connect.rs new file mode 100644 index 000000000..a522d322f --- /dev/null +++ b/tests/generated/preview2_udp_connect.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview2_udp_connect() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview2_udp_connect"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview2_udp_connect"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview2_udp_connect --jco-import ./tests/virtualenvs/base.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview2_udp_sample_application.rs b/tests/generated/preview2_udp_sample_application.rs new file mode 100644 index 000000000..0d0bbfee5 --- /dev/null +++ b/tests/generated/preview2_udp_sample_application.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview2_udp_sample_application() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview2_udp_sample_application"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview2_udp_sample_application"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview2_udp_sample_application --jco-import ./tests/virtualenvs/base.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview2_udp_sockopts.rs b/tests/generated/preview2_udp_sockopts.rs new file mode 100644 index 000000000..af349a590 --- /dev/null +++ b/tests/generated/preview2_udp_sockopts.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview2_udp_sockopts() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview2_udp_sockopts"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview2_udp_sockopts"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview2_udp_sockopts --jco-import ./tests/virtualenvs/base.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/generated/preview2_udp_states.rs b/tests/generated/preview2_udp_states.rs new file mode 100644 index 000000000..d44ca8552 --- /dev/null +++ b/tests/generated/preview2_udp_states.rs @@ -0,0 +1,23 @@ +//! This file has been auto-generated, please do not modify manually +//! To regenerate this file re-run `cargo xtask generate tests` from the project root + +use std::fs; +use tempdir::TempDir; +use xshell::{cmd, Shell}; + +#[test] +fn preview2_udp_states() -> anyhow::Result<()> { + let sh = Shell::new()?; + let file_name = "preview2_udp_states"; + let tempdir = TempDir::new("{file_name}")?; + let wasi_file = test_utils::compile(&sh, &tempdir, &file_name)?; + let _ = fs::remove_dir_all("./tests/rundir/preview2_udp_states"); + + let cmd = cmd!(sh, "node ./src/jco.js run --jco-dir ./tests/rundir/preview2_udp_states --jco-import ./tests/virtualenvs/base.js {wasi_file} hello this '' 'is an argument' 'with 🚩 emoji'"); + + let cmd = cmd + .env("JCO_RUN_PATH", "deno") + .env("JCO_RUN_ARGS", "run --importmap importmap.json -A"); + cmd.run()?; + Ok(()) +} diff --git a/tests/importmap.json b/tests/importmap.json new file mode 100644 index 000000000..7dfb99bdb --- /dev/null +++ b/tests/importmap.json @@ -0,0 +1,11 @@ +{ + "imports": { + "@bytecodealliance/preview2-shim/filesystem": "../node_modules/@bytecodealliance/preview2-shim/lib/nodejs/filesystem.js", + "@bytecodealliance/preview2-shim/sockets": "../node_modules/@bytecodealliance/preview2-shim/lib/nodejs/sockets.js", + "@bytecodealliance/preview2-shim/clocks": "../node_modules/@bytecodealliance/preview2-shim/lib/nodejs/clocks.js", + "@bytecodealliance/preview2-shim/io": "../node_modules/@bytecodealliance/preview2-shim/lib/nodejs/io.js", + "@bytecodealliance/preview2-shim/http": "../node_modules/@bytecodealliance/preview2-shim/lib/nodejs/http.js", + "@bytecodealliance/preview2-shim/cli": "../node_modules/@bytecodealliance/preview2-shim/lib/nodejs/cli.js", + "@bytecodealliance/preview2-shim/random": "../node_modules/@bytecodealliance/preview2-shim/lib/nodejs/random.js" + } +} \ No newline at end of file diff --git a/tests/server/index.js b/tests/server/index.js index 0d2b82c36..1e0bc8154 100644 --- a/tests/server/index.js +++ b/tests/server/index.js @@ -4,6 +4,7 @@ import { readFileSync, rmdirSync, writeFileSync, symlinkSync } from "node:fs"; import { fileURLToPath, pathToFileURL } from "node:url"; import { $init, generate } from "../../obj/js-component-bindgen-component.js"; import { fork } from "node:child_process"; +import process from "node:process"; export const testDir = await mkdtemp('tests/output/server'); diff --git a/tests/virtualenvs/base.js b/tests/virtualenvs/base.js index 5ec14ec03..d7502bf3e 100644 --- a/tests/virtualenvs/base.js +++ b/tests/virtualenvs/base.js @@ -4,6 +4,7 @@ import { mkdtemp, writeFile, mkdir } from 'node:fs/promises'; import { rmdirSync } from 'node:fs'; import { resolve } from 'node:path'; import { platform } from 'node:process'; +import process from 'node:process'; await mkdir("tests/output", { recursive: true }); diff --git a/tests/virtualenvs/http.js b/tests/virtualenvs/http.js index 12d3da80e..7c8a034d5 100644 --- a/tests/virtualenvs/http.js +++ b/tests/virtualenvs/http.js @@ -17,4 +17,5 @@ _setEnv({ 'HTTP_SERVER': `localhost:${PORT}` }); -worker.unref(); +if (worker.unref) + worker.unref(); diff --git a/tests/virtualenvs/readonly.js b/tests/virtualenvs/readonly.js index 81aeb0a50..91b650958 100644 --- a/tests/virtualenvs/readonly.js +++ b/tests/virtualenvs/readonly.js @@ -1,5 +1,6 @@ import { chmodSync } from 'node:fs'; import { resolve } from 'node:path'; +import process from 'node:process'; process.on('exit', () => { chmodSync(testDir, 0o777); diff --git a/tests/virtualenvs/scratch.js b/tests/virtualenvs/scratch.js index 5ebf6c469..5352d3857 100644 --- a/tests/virtualenvs/scratch.js +++ b/tests/virtualenvs/scratch.js @@ -2,10 +2,10 @@ import { _setArgs, _setEnv } from "@bytecodealliance/preview2-shim/cli"; import { _setPreopens } from "@bytecodealliance/preview2-shim/filesystem"; import { mkdtemp } from 'node:fs/promises'; import { rmdirSync } from 'node:fs'; -import { platform } from 'node:process'; +import process from 'node:process'; -const isWindows = platform === 'win32'; -const isMac = platform === 'darwin'; +const isWindows = process.platform === 'win32'; +const isMac = process.platform === 'darwin'; const env = { FS_TIME_PRECISION: "2000", diff --git a/xtask/src/generate/tests.rs b/xtask/src/generate/tests.rs index 24b92f32e..a989ca862 100644 --- a/xtask/src/generate/tests.rs +++ b/xtask/src/generate/tests.rs @@ -3,10 +3,112 @@ use xshell::{cmd, Shell}; // for debugging const TRACE: bool = false; +const DENO: bool = true; const TEST_FILTER: &[&str] = &[]; const TEST_IGNORE: &[&str] = &["nn_image_classification", "nn_image_classification_named"]; +// Deno cannot exit the process, pending https://github.com/denoland/deno/issues/22629 +const DENO_IGNORE: &[&str] = &[ + "api_read_only", + "cli_default_clocks", + "cli_directory_list", + "cli_exit_panic", + "cli_export_cabi_realloc", + "cli_file_append", + "cli_file_dir_sync", + "cli_file_read", + "cli_hello_stdout", + "cli_no_ip_name_lookup", + "cli_no_tcp", + "cli_no_udp", + "cli_splice_stdin", + "cli_stdin", + "cli_stdio_write_flushes", + "http_outbound_request_content_length", + "http_outbound_request_get", + "http_outbound_request_invalid_dnsname", + "http_outbound_request_invalid_header", + "http_outbound_request_invalid_port", + "http_outbound_request_invalid_version", + "http_outbound_request_large_post", + "http_outbound_request_post", + "http_outbound_request_put", + "http_outbound_request_response_build", + "http_outbound_request_unknown_method", + "http_outbound_request_unsupported_scheme", + "piped_multiple", + "piped_polling", + "piped_simple", + "preview1_clock_time_get", + "preview1_close_preopen", + "preview1_dangling_fd", + "preview1_dangling_symlink", + "preview1_dir_fd_op_failures", + "preview1_directory_seek", + "preview1_fd_advise", + "preview1_fd_filestat_get", + "preview1_fd_filestat_set", + "preview1_fd_flags_set", + "preview1_fd_readdir", + "preview1_file_allocate", + "preview1_file_pread_pwrite", + "preview1_file_seek_tell", + "preview1_file_truncation", + "preview1_file_unbuffered_write", + "preview1_file_write", + "preview1_interesting_paths", + "preview1_nofollow_errors", + "preview1_overwrite_preopen", + "preview1_path_exists", + "preview1_path_filestat", + "preview1_path_link", + "preview1_path_open_create_existing", + "preview1_path_open_dirfd_not_dir", + "preview1_path_open_lots", + "preview1_path_open_missing", + "preview1_path_open_nonblock", + "preview1_path_open_preopen", + "preview1_path_open_read_write", + "preview1_path_rename", + "preview1_path_rename_dir_trailing_slashes", + "preview1_path_symlink_trailing_slashes", + "preview1_poll_oneoff_files", + "preview1_poll_oneoff_stdio", + "preview1_readlink", + "preview1_regular_file_isatty", + "preview1_remove_directory", + "preview1_remove_nonempty_directory", + "preview1_renumber", + "preview1_sched_yield", + "preview1_stdio", + "preview1_stdio_isatty", + "preview1_stdio_not_isatty", + "preview1_symlink_create", + "preview1_symlink_filestat", + "preview1_symlink_loop", + "preview1_unicode_output", + "preview1_unlink_file_trailing_slashes", + "preview2_adapter_badfd", + "preview2_ip_name_lookup", + "preview2_sleep", + "preview2_stream_pollable_correct", + "preview2_stream_pollable_traps", + "preview2_tcp_bind", + "preview2_tcp_connect", + "preview2_tcp_sample_application", + "preview2_tcp_sockopts", + "preview2_tcp_states", + "preview2_udp_bind", + "preview2_udp_connect", + "preview2_udp_sample_application", + "preview2_udp_sockopts", + "preview2_udp_states", + "proxy_echo", + "proxy_handler", + "proxy_hash", +]; + // Tests that cannot be implemented on Windows const TEST_IGNORE_WINDOWS: &[&str] = &[ // openAt implementation should carry directory permissions through to nested @@ -57,7 +159,8 @@ pub fn run() -> anyhow::Result<()> { test_names }; - for test_name in &test_names { + let mut all_names = Vec::new(); + for test_name in test_names { let path = format!("submodules/wasmtime/target/wasm32-wasi/debug/{test_name}.wasm"); // compile into generated dir let dest_file = format!("./tests/gen/{test_name}.component.wasm"); @@ -78,20 +181,30 @@ pub fn run() -> anyhow::Result<()> { let windows_skip = TEST_IGNORE_WINDOWS.contains(&test_name.as_ref()); - let content = generate_test(&test_name, windows_skip); - let file_name = format!("tests/gen/{test_name}.rs"); - fs::write(file_name, content)?; + let content = generate_test(&test_name, windows_skip, false); + fs::write(format!("tests/gen/{test_name}.rs"), content)?; + + if DENO && !DENO_IGNORE.contains(&test_name.as_ref()) { + let content = generate_test(&test_name, windows_skip, true); + let test_name = format!("deno_{test_name}"); + fs::write(format!("tests/gen/{test_name}.rs"), content)?; + all_names.push(test_name); + } + + all_names.push(test_name); } - let content = generate_mod(test_names.as_slice()); + all_names.sort(); + + let content = generate_mod(all_names.as_slice()); let file_name = "tests/gen/mod.rs"; fs::write(file_name, content)?; - println!("generated {} tests", test_names.len()); + println!("generated {} tests", all_names.len()); Ok(()) } /// Generate an individual test -fn generate_test(test_name: &str, windows_skip: bool) -> String { +fn generate_test(test_name: &str, windows_skip: bool, deno: bool) -> String { let piped = test_name.starts_with("piped_"); let virtual_env = match test_name { "api_read_only" => "readonly", @@ -137,13 +250,14 @@ fn generate_test(test_name: &str, windows_skip: bool) -> String { let mut cmd1_child = cmd1.spawn().expect(\"failed to spawn test program\");", generate_command_invocation( "cmd1", - test_name, + &format!("{}{test_name}", if deno { "deno_" } else { "" }), virtual_env, if stdin.is_some() { Some("Stdio::piped()") } else { None }, + deno ), if piped { " @@ -163,6 +277,7 @@ fn generate_test(test_name: &str, windows_skip: bool) -> String { &format!("{test_name}_consumer"), &format!("{virtual_env}-consumer"), None, + deno ) ) } else { @@ -180,7 +295,7 @@ use std::fs; fn {test_name}() -> anyhow::Result<()> {{ {}{{ let wasi_file = "./tests/gen/{test_name}.component.wasm"; - let _ = fs::remove_dir_all("./tests/rundir/{test_name}"); + let _ = fs::remove_dir_all("./tests/rundir/{}{test_name}"); {cmd1} {cmd2}{}let status = cmd{}_child.wait().expect("failed to wait on child"); assert!({}status.success(), "test execution failed"); @@ -193,6 +308,7 @@ fn {test_name}() -> anyhow::Result<()> {{ } else { "" }, + if deno { "deno_" } else { "" }, match stdin { Some(stdin) => format!( "cmd1_child @@ -216,12 +332,12 @@ fn generate_command_invocation( run_dir: &str, virtual_env: &str, stdin: Option<&str>, + deno: bool, ) -> String { return format!( r##"let mut {cmd_name} = Command::new("node"); {cmd_name}.arg("./src/jco.js"); - {cmd_name}.arg("run"); -{} + {cmd_name}.arg("run");{}{} {cmd_name}.arg("--jco-dir"); {cmd_name}.arg("./tests/rundir/{run_dir}"); {cmd_name}.arg("--jco-import"); @@ -230,7 +346,19 @@ fn generate_command_invocation( {cmd_name}.args(&["hello", "this", "", "is an argument", "with 🚩 emoji"]); {cmd_name}.stdin({});"##, if TRACE { - format!(" {cmd_name}.arg(\"--jco-trace\");") + format!( + " + {cmd_name}.arg(\"--jco-trace\");" + ) + } else { + "".into() + }, + if deno { + format!( + " + {cmd_name}.env(\"JCO_RUN_PATH\", \"deno\") + .env(\"JCO_RUN_ARGS\", \"run --importmap ./tests/importmap.json -A\");" + ) } else { "".into() },