diff options
Diffstat (limited to 'tests/integration/run_tests.rs')
-rw-r--r-- | tests/integration/run_tests.rs | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/tests/integration/run_tests.rs b/tests/integration/run_tests.rs index 6419f6ff0..eec10f64f 100644 --- a/tests/integration/run_tests.rs +++ b/tests/integration/run_tests.rs @@ -5359,3 +5359,32 @@ fn code_cache_npm_with_require_test() { assert!(!output.stderr().contains("Updating V8 code cache")); } } + +#[test] +fn node_process_stdin_unref_with_pty() { + TestContext::default() + .new_command() + .args_vec(["run", "--quiet", "run/node_process_stdin_unref_with_pty.js"]) + .with_pty(|mut console| { + console.expect("START\r\n"); + console.write_line("foo"); + console.expect("foo\r\n"); + console.write_line("bar"); + console.expect("bar\r\n"); + console.write_line("baz"); + console.expect("baz\r\n"); + }); + + TestContext::default() + .new_command() + .args_vec([ + "run", + "--quiet", + "run/node_process_stdin_unref_with_pty.js", + "--unref", + ]) + .with_pty(|mut console| { + // if process.stdin.unref is called, the program immediately ends by skipping reading from stdin. + console.expect("START\r\nEND\r\n"); + }); +} |