import { green, red, stripColor } from "../fmt/colors.ts";import { assertEquals, assertThrows } from "./asserts.ts";import { format } from "./_format.ts";
Deno.test("assert diff formatting (strings)", () => { assertThrows( () => { assertEquals([..."abcd"].join("\n"), [..."abxde"].join("\n")); }, Error, ` a\\n b\\n${green("+ x")}\\n${green("+ d")}\\n${green("+ e")}${red("- c")}\\n${red("- d")}`, );});
Deno.test("assert diff formatting", () => { assertEquals( stripColor(format({ a: 1, b: 2 })), `{ a: 1, b: 2,}`, );
assertEquals( stripColor(format([{ x: { a: 1, b: 2 }, y: ["a", "b"] }])), `[ { x: { a: 1, b: 2, }, y: [ "a", "b", ], },]`, );
assertEquals( stripColor(format(["i", "i", "i", "i", "i", "i", "i"])), `[ "i", "i", "i", "i", "i", "i", "i",]`, );});