diff options
Diffstat (limited to 'cli/tests/testdata/raw_mode.ts')
| -rw-r--r-- | cli/tests/testdata/raw_mode.ts | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/cli/tests/testdata/raw_mode.ts b/cli/tests/testdata/raw_mode.ts new file mode 100644 index 000000000..87502e7d9 --- /dev/null +++ b/cli/tests/testdata/raw_mode.ts @@ -0,0 +1,18 @@ +Deno.setRaw(0, true); +Deno.setRaw(0, true); // Can be called multiple times + +Deno.stdout.writeSync(new TextEncoder().encode("S")); + +const buf = new Uint8Array(3); +for (let i = 0; i < 3; i++) { + const nread = await Deno.stdin.read(buf); + if (nread === null) { + break; + } else { + const data = new TextDecoder().decode(buf.subarray(0, nread)); + Deno.stdout.writeSync(new TextEncoder().encode(data.toUpperCase())); + } +} + +Deno.setRaw(0, false); // restores old mode. +Deno.setRaw(0, false); // Can be safely called multiple times |
