diff options
-rw-r--r-- | ext/node/polyfills/tty.js | 5 | ||||
-rw-r--r-- | tests/unit_node/tty_test.ts | 4 |
2 files changed, 8 insertions, 1 deletions
diff --git a/ext/node/polyfills/tty.js b/ext/node/polyfills/tty.js index 2e8ecc8e1..e906c5f67 100644 --- a/ext/node/polyfills/tty.js +++ b/ext/node/polyfills/tty.js @@ -113,7 +113,10 @@ export class WriteStream extends Socket { * @returns {boolean} */ hasColors(count, env) { - if (env === undefined && typeof count === "object") { + if ( + env === undefined && + (count === undefined || typeof count === "object" && count !== null) + ) { env = count; count = 16; } diff --git a/tests/unit_node/tty_test.ts b/tests/unit_node/tty_test.ts index ab3193f4a..7f0395682 100644 --- a/tests/unit_node/tty_test.ts +++ b/tests/unit_node/tty_test.ts @@ -38,6 +38,10 @@ Deno.test("[node/tty WriteStream.isTTY] returns true when fd is a tty", () => { Deno.test("[node/tty WriteStream.hasColors] returns true when colors are supported", () => { assert(tty.WriteStream.prototype.hasColors() === !Deno.noColor); + assert(tty.WriteStream.prototype.hasColors({}) === !Deno.noColor); + + assert(tty.WriteStream.prototype.hasColors(1)); + assert(tty.WriteStream.prototype.hasColors(1, {})); }); Deno.test("[node/tty WriteStream.getColorDepth] returns current terminal color depth", () => { |