diff options
Diffstat (limited to 'tests/unit/console_test.ts')
-rw-r--r-- | tests/unit/console_test.ts | 141 |
1 files changed, 73 insertions, 68 deletions
diff --git a/tests/unit/console_test.ts b/tests/unit/console_test.ts index 4c9378bd4..957ad3ef9 100644 --- a/tests/unit/console_test.ts +++ b/tests/unit/console_test.ts @@ -14,7 +14,7 @@ import { assertStringIncludes, assertThrows, } from "./test_util.ts"; -import { stripColor } from "@std/fmt/colors.ts"; +import { stripAnsiCode } from "@std/fmt/colors"; const customInspect = Symbol.for("Deno.customInspect"); const { @@ -27,7 +27,7 @@ const { } = Deno[Deno.internal]; function stringify(...args: unknown[]): string { - return stripColor(inspectArgs(args).replace(/\n$/, "")); + return stripAnsiCode(inspectArgs(args).replace(/\n$/, "")); } interface Css { @@ -372,7 +372,7 @@ Deno.test(function consoleTestStringifyCircular() { }`, ); // test inspect is working the same - assertEquals(stripColor(Deno.inspect(nestedObj)), nestedObjExpected); + assertEquals(stripAnsiCode(Deno.inspect(nestedObj)), nestedObjExpected); }); Deno.test(function consoleTestStringifyMultipleCircular() { @@ -451,7 +451,7 @@ Deno.test(function consoleTestStringifyFunctionWithProperties() { ); assertEquals( - stripColor(Deno.inspect(Array, { showHidden: true })), + stripAnsiCode(Deno.inspect(Array, { showHidden: true })), `<ref *1> [Function: Array] { [length]: 1, [name]: "Array", @@ -529,24 +529,24 @@ Deno.test(function consoleTestStringifyWithDepth() { // deno-lint-ignore no-explicit-any const nestedObj: any = { a: { b: { c: { d: { e: { f: 42 } } } } } }; assertEquals( - stripColor(inspectArgs([nestedObj], { depth: 3 })), + stripAnsiCode(inspectArgs([nestedObj], { depth: 3 })), "{\n a: { b: { c: { d: [Object] } } }\n}", ); assertEquals( - stripColor(inspectArgs([nestedObj], { depth: 4 })), + stripAnsiCode(inspectArgs([nestedObj], { depth: 4 })), "{\n a: {\n b: { c: { d: { e: [Object] } } }\n }\n}", ); assertEquals( - stripColor(inspectArgs([nestedObj], { depth: 0 })), + stripAnsiCode(inspectArgs([nestedObj], { depth: 0 })), "{ a: [Object] }", ); assertEquals( - stripColor(inspectArgs([nestedObj])), + stripAnsiCode(inspectArgs([nestedObj])), "{\n a: {\n b: { c: { d: { e: [Object] } } }\n }\n}", ); // test inspect is working the same way assertEquals( - stripColor(Deno.inspect(nestedObj, { depth: 4 })), + stripAnsiCode(Deno.inspect(nestedObj, { depth: 4 })), "{\n a: {\n b: { c: { d: { e: [Object] } } }\n }\n}", ); }); @@ -1032,11 +1032,13 @@ Deno.test(function consoleTestIteratorValueAreNotConsumed() { Deno.test(function consoleTestWeakSetAndWeakMapWithShowHidden() { assertEquals( - stripColor(Deno.inspect(new WeakSet([{}]), { showHidden: true })), + stripAnsiCode(Deno.inspect(new WeakSet([{}]), { showHidden: true })), "WeakSet { {} }", ); assertEquals( - stripColor(Deno.inspect(new WeakMap([[{}, "foo"]]), { showHidden: true })), + stripAnsiCode( + Deno.inspect(new WeakMap([[{}, "foo"]]), { showHidden: true }), + ), 'WeakMap { {} => "foo" }', ); }); @@ -1195,7 +1197,10 @@ Deno.test(function consoleTestWithObjectFormatSpecifier() { Deno.test(function consoleTestWithStyleSpecifier() { assertEquals(stringify("%cfoo%cbar"), "%cfoo%cbar"); assertEquals(stringify("%cfoo%cbar", ""), "foo%cbar"); - assertEquals(stripColor(stringify("%cfoo%cbar", "", "color: red")), "foobar"); + assertEquals( + stripAnsiCode(stringify("%cfoo%cbar", "", "color: red")), + "foobar", + ); }); Deno.test(function consoleParseCssColor() { @@ -1532,7 +1537,7 @@ Deno.test(function consoleTable() { mockConsole((console, out) => { console.table({ a: "test", b: 1 }); assertEquals( - stripColor(out.toString()), + stripAnsiCode(out.toString()), `\ ┌───────┬────────┐ │ (idx) │ Values │ @@ -1546,7 +1551,7 @@ Deno.test(function consoleTable() { mockConsole((console, out) => { console.table({ a: { b: 10 }, b: { b: 20, c: 30 } }, ["c"]); assertEquals( - stripColor(out.toString()), + stripAnsiCode(out.toString()), `\ ┌───────┬────┐ │ (idx) │ c │ @@ -1560,7 +1565,7 @@ Deno.test(function consoleTable() { mockConsole((console, out) => { console.table([[1, 1], [234, 2.34], [56789, 56.789]]); assertEquals( - stripColor(out.toString()), + stripAnsiCode(out.toString()), `\ ┌───────┬───────┬────────┐ │ (idx) │ 0 │ 1 │ @@ -1575,7 +1580,7 @@ Deno.test(function consoleTable() { mockConsole((console, out) => { console.table([1, 2, [3, [4]], [5, 6], [[7], [8]]]); assertEquals( - stripColor(out.toString()), + stripAnsiCode(out.toString()), `\ ┌───────┬───────┬───────┬────────┐ │ (idx) │ 0 │ 1 │ Values │ @@ -1592,7 +1597,7 @@ Deno.test(function consoleTable() { mockConsole((console, out) => { console.table(new Set([1, 2, 3, "test"])); assertEquals( - stripColor(out.toString()), + stripAnsiCode(out.toString()), `\ ┌────────────┬────────┐ │ (iter idx) │ Values │ @@ -1613,7 +1618,7 @@ Deno.test(function consoleTable() { ]), ); assertEquals( - stripColor(out.toString()), + stripAnsiCode(out.toString()), `\ ┌────────────┬─────┬────────┐ │ (iter idx) │ Key │ Values │ @@ -1633,7 +1638,7 @@ Deno.test(function consoleTable() { h: new Map([[1, "one"]]), }); assertEquals( - stripColor(out.toString()), + stripAnsiCode(out.toString()), `\ ┌───────┬───────────┬────────────────────┬────────┐ │ (idx) │ c │ e │ Values │ @@ -1656,7 +1661,7 @@ Deno.test(function consoleTable() { ["test", { b: 20, c: "test" }], ]); assertEquals( - stripColor(out.toString()), + stripAnsiCode(out.toString()), `\ ┌───────┬────────┬──────────────────────┬────┬────────┐ │ (idx) │ 0 │ 1 │ a │ Values │ @@ -1673,7 +1678,7 @@ Deno.test(function consoleTable() { mockConsole((console, out) => { console.table([]); assertEquals( - stripColor(out.toString()), + stripAnsiCode(out.toString()), `\ ┌───────┐ │ (idx) │ @@ -1685,7 +1690,7 @@ Deno.test(function consoleTable() { mockConsole((console, out) => { console.table({}); assertEquals( - stripColor(out.toString()), + stripAnsiCode(out.toString()), `\ ┌───────┐ │ (idx) │ @@ -1697,7 +1702,7 @@ Deno.test(function consoleTable() { mockConsole((console, out) => { console.table(new Set()); assertEquals( - stripColor(out.toString()), + stripAnsiCode(out.toString()), `\ ┌────────────┐ │ (iter idx) │ @@ -1709,7 +1714,7 @@ Deno.test(function consoleTable() { mockConsole((console, out) => { console.table(new Map()); assertEquals( - stripColor(out.toString()), + stripAnsiCode(out.toString()), `\ ┌────────────┐ │ (iter idx) │ @@ -1725,7 +1730,7 @@ Deno.test(function consoleTable() { mockConsole((console, out) => { console.table(["Hello", "你好", "Amapá"]); assertEquals( - stripColor(out.toString()), + stripAnsiCode(out.toString()), `\ ┌───────┬─────────┐ │ (idx) │ Values │ @@ -1743,7 +1748,7 @@ Deno.test(function consoleTable() { [3, 4], ]); assertEquals( - stripColor(out.toString()), + stripAnsiCode(out.toString()), `\ ┌───────┬───┬───┐ │ (idx) │ 0 │ 1 │ @@ -1757,7 +1762,7 @@ Deno.test(function consoleTable() { mockConsole((console, out) => { console.table({ 1: { a: 4, b: 5 }, 2: null, 3: { b: 6, c: 7 } }, ["b"]); assertEquals( - stripColor(out.toString()), + stripAnsiCode(out.toString()), `\ ┌───────┬───┐ │ (idx) │ b │ @@ -1772,7 +1777,7 @@ Deno.test(function consoleTable() { mockConsole((console, out) => { console.table([{ a: 0 }, { a: 1, b: 1 }, { a: 2 }, { a: 3, b: 3 }]); assertEquals( - stripColor(out.toString()), + stripAnsiCode(out.toString()), `\ ┌───────┬───┬───┐ │ (idx) │ a │ b │ @@ -1791,7 +1796,7 @@ Deno.test(function consoleTable() { ["a", "b", "c"], ); assertEquals( - stripColor(out.toString()), + stripAnsiCode(out.toString()), `\ ┌───────┬───┬───┬───┐ │ (idx) │ a │ b │ c │ @@ -1829,7 +1834,7 @@ Deno.test(function consoleLogShouldNotThrowError() { Deno.test(function consoleLogShouldNotThrowErrorWhenInvalidCssColorsAreGiven() { mockConsole((console, out) => { console.log("%cfoo", "color: foo; background-color: bar;"); - assertEquals(stripColor(out.toString()), "foo\n"); + assertEquals(stripAnsiCode(out.toString()), "foo\n"); }); }); @@ -1838,7 +1843,7 @@ Deno.test(function consoleLogShouldNotThrowErrorWhenInvalidDateIsPassed() { mockConsole((console, out) => { const invalidDate = new Date("test"); console.log(invalidDate); - assertEquals(stripColor(out.toString()), "Invalid Date\n"); + assertEquals(stripAnsiCode(out.toString()), "Invalid Date\n"); }); }); @@ -1847,7 +1852,7 @@ Deno.test(function consoleLogShouldNotThrowErrorWhenInputIsProxiedSet() { mockConsole((console, out) => { const proxiedSet = new Proxy(new Set([1, 2]), {}); console.log(proxiedSet); - assertEquals(stripColor(out.toString()), "Set(2) { 1, 2 }\n"); + assertEquals(stripAnsiCode(out.toString()), "Set(2) { 1, 2 }\n"); }); }); @@ -1856,7 +1861,7 @@ Deno.test(function consoleLogShouldNotThrowErrorWhenInputIsProxiedMap() { mockConsole((console, out) => { const proxiedMap = new Proxy(new Map([[1, 1], [2, 2]]), {}); console.log(proxiedMap); - assertEquals(stripColor(out.toString()), "Map(2) { 1 => 1, 2 => 2 }\n"); + assertEquals(stripAnsiCode(out.toString()), "Map(2) { 1 => 1, 2 => 2 }\n"); }); }); @@ -1865,7 +1870,7 @@ Deno.test(function consoleLogShouldNotThrowErrorWhenInputIsProxiedTypedArray() { mockConsole((console, out) => { const proxiedUint8Array = new Proxy(new Uint8Array([1, 2]), {}); console.log(proxiedUint8Array); - assertEquals(stripColor(out.toString()), "Uint8Array(2) [ 1, 2 ]\n"); + assertEquals(stripAnsiCode(out.toString()), "Uint8Array(2) [ 1, 2 ]\n"); }); }); @@ -1874,7 +1879,7 @@ Deno.test(function consoleLogShouldNotThrowErrorWhenInputIsProxiedRegExp() { mockConsole((console, out) => { const proxiedRegExp = new Proxy(/aaaa/, {}); console.log(proxiedRegExp); - assertEquals(stripColor(out.toString()), "/aaaa/\n"); + assertEquals(stripAnsiCode(out.toString()), "/aaaa/\n"); }); }); @@ -1883,7 +1888,7 @@ Deno.test(function consoleLogShouldNotThrowErrorWhenInputIsProxiedDate() { mockConsole((console, out) => { const proxiedDate = new Proxy(new Date("2022-09-24T15:59:39.529Z"), {}); console.log(proxiedDate); - assertEquals(stripColor(out.toString()), "2022-09-24T15:59:39.529Z\n"); + assertEquals(stripAnsiCode(out.toString()), "2022-09-24T15:59:39.529Z\n"); }); }); @@ -1892,7 +1897,7 @@ Deno.test(function consoleLogShouldNotThrowErrorWhenInputIsProxiedError() { mockConsole((console, out) => { const proxiedError = new Proxy(new Error("message"), {}); console.log(proxiedError); - assertStringIncludes(stripColor(out.toString()), "Error: message\n"); + assertStringIncludes(stripAnsiCode(out.toString()), "Error: message\n"); }); }); @@ -1931,18 +1936,18 @@ Deno.test(function consoleTrace() { Deno.test(function inspectString() { assertEquals( - stripColor(Deno.inspect("\0")), + stripAnsiCode(Deno.inspect("\0")), `"\\x00"`, ); assertEquals( - stripColor(Deno.inspect("\x1b[2J")), + stripAnsiCode(Deno.inspect("\x1b[2J")), `"\\x1b[2J"`, ); }); Deno.test(function inspectGetters() { assertEquals( - stripColor(Deno.inspect({ + stripAnsiCode(Deno.inspect({ get foo() { return 0; }, @@ -1951,7 +1956,7 @@ Deno.test(function inspectGetters() { ); assertEquals( - stripColor(Deno.inspect({ + stripAnsiCode(Deno.inspect({ get foo() { return 0; }, @@ -1976,15 +1981,15 @@ Deno.test(function inspectPrototype() { Deno.test(function inspectSorted() { assertEquals( - stripColor(Deno.inspect({ b: 2, a: 1 }, { sorted: true })), + stripAnsiCode(Deno.inspect({ b: 2, a: 1 }, { sorted: true })), "{ a: 1, b: 2 }", ); assertEquals( - stripColor(Deno.inspect(new Set(["b", "a"]), { sorted: true })), + stripAnsiCode(Deno.inspect(new Set(["b", "a"]), { sorted: true })), `Set(2) { "a", "b" }`, ); assertEquals( - stripColor(Deno.inspect( + stripAnsiCode(Deno.inspect( new Map([ ["b", 2], ["a", 1], @@ -1997,7 +2002,7 @@ Deno.test(function inspectSorted() { Deno.test(function inspectTrailingComma() { assertEquals( - stripColor(Deno.inspect( + stripAnsiCode(Deno.inspect( [ "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb", @@ -2010,7 +2015,7 @@ Deno.test(function inspectTrailingComma() { ]`, ); assertEquals( - stripColor(Deno.inspect( + stripAnsiCode(Deno.inspect( { aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa: 1, bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb: 2, @@ -2023,7 +2028,7 @@ Deno.test(function inspectTrailingComma() { }`, ); assertEquals( - stripColor(Deno.inspect( + stripAnsiCode(Deno.inspect( new Set([ "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb", @@ -2036,7 +2041,7 @@ Deno.test(function inspectTrailingComma() { }`, ); assertEquals( - stripColor(Deno.inspect( + stripAnsiCode(Deno.inspect( new Map([ ["aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", 1], ["bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb", 2], @@ -2052,7 +2057,7 @@ Deno.test(function inspectTrailingComma() { Deno.test(function inspectCompact() { assertEquals( - stripColor(Deno.inspect({ a: 1, b: 2 }, { compact: false })), + stripAnsiCode(Deno.inspect({ a: 1, b: 2 }, { compact: false })), `{ a: 1, b: 2 @@ -2062,15 +2067,15 @@ Deno.test(function inspectCompact() { Deno.test(function inspectIterableLimit() { assertEquals( - stripColor(Deno.inspect(["a", "b", "c"], { iterableLimit: 2 })), + stripAnsiCode(Deno.inspect(["a", "b", "c"], { iterableLimit: 2 })), `[ "a", "b", ... 1 more item ]`, ); assertEquals( - stripColor(Deno.inspect(new Set(["a", "b", "c"]), { iterableLimit: 2 })), + stripAnsiCode(Deno.inspect(new Set(["a", "b", "c"]), { iterableLimit: 2 })), `Set(3) { "a", "b", ... 1 more item }`, ); assertEquals( - stripColor(Deno.inspect( + stripAnsiCode(Deno.inspect( new Map([ ["a", 1], ["b", 2], @@ -2084,19 +2089,19 @@ Deno.test(function inspectIterableLimit() { Deno.test(function inspectProxy() { assertEquals( - stripColor(Deno.inspect( + stripAnsiCode(Deno.inspect( new Proxy([1, 2, 3], {}), )), "[ 1, 2, 3 ]", ); assertEquals( - stripColor(Deno.inspect( + stripAnsiCode(Deno.inspect( new Proxy({ key: "value" }, {}), )), `{ key: "value" }`, ); assertEquals( - stripColor(Deno.inspect( + stripAnsiCode(Deno.inspect( new Proxy({}, { get(_target, key) { if (key === Symbol.toStringTag) { @@ -2120,14 +2125,14 @@ Deno.test(function inspectProxy() { `Object [MyProxy] { prop1: 5, prop2: 5 }`, ); assertEquals( - stripColor(Deno.inspect( + stripAnsiCode(Deno.inspect( new Proxy([1, 2, 3], { get() {} }), { showProxy: true }, )), "Proxy [ [ 1, 2, 3 ], { get: [Function: get] } ]", ); assertEquals( - stripColor(Deno.inspect( + stripAnsiCode(Deno.inspect( new Proxy({ a: 1 }, { set(): boolean { return false; @@ -2138,7 +2143,7 @@ Deno.test(function inspectProxy() { "Proxy [ { a: 1 }, { set: [Function: set] } ]", ); assertEquals( - stripColor(Deno.inspect( + stripAnsiCode(Deno.inspect( new Proxy([1, 2, 3, 4, 5, 6, 7], { get() {} }), { showProxy: true }, )), @@ -2151,7 +2156,7 @@ Deno.test(function inspectProxy() { ]`, ); assertEquals( - stripColor(Deno.inspect( + stripAnsiCode(Deno.inspect( new Proxy(function fn() {}, { get() {} }), { showProxy: true }, )), @@ -2166,15 +2171,15 @@ Deno.test(function inspectError() { }); assertStringIncludes( - stripColor(Deno.inspect(error1)), + stripAnsiCode(Deno.inspect(error1)), "Error: This is an error", ); assertStringIncludes( - stripColor(Deno.inspect(error2)), + stripAnsiCode(Deno.inspect(error2)), "Error: This is an error", ); assertStringIncludes( - stripColor(Deno.inspect(error2)), + stripAnsiCode(Deno.inspect(error2)), "Caused by Error: This is a cause error", ); }); @@ -2189,19 +2194,19 @@ Deno.test(function inspectErrorCircular() { error2.cause.cause = error2; assertStringIncludes( - stripColor(Deno.inspect(error1)), + stripAnsiCode(Deno.inspect(error1)), "Error: This is an error", ); assertStringIncludes( - stripColor(Deno.inspect(error2)), + stripAnsiCode(Deno.inspect(error2)), "<ref *1> Error: This is an error", ); assertStringIncludes( - stripColor(Deno.inspect(error2)), + stripAnsiCode(Deno.inspect(error2)), "Caused by Error: This is a cause error", ); assertStringIncludes( - stripColor(Deno.inspect(error2)), + stripAnsiCode(Deno.inspect(error2)), "Caused by [Circular *1]", ); }); @@ -2213,11 +2218,11 @@ Deno.test(function inspectErrorWithCauseFormat() { }, }); assertStringIncludes( - stripColor(Deno.inspect(error)), + stripAnsiCode(Deno.inspect(error)), "Error: This is an error", ); assertStringIncludes( - stripColor(Deno.inspect(error)), + stripAnsiCode(Deno.inspect(error)), "Caused by { code: 100500 }", ); }); |