@Test
public void testCanvas() {

    Canvas c = new Canvas(10, 10);
    c.box(0, 0, 10, 10);
    assertEquals(//
                 "" + "┌────────┐\n" + "│        │\n" + "│        │\n" + "│        │\n" + "│        │\n" + "│        │\n" + "│        │\n" + "│        │\n" + "│        │\n" + "└────────┘\n" + "", c.toString());
    c.box(2, 2, 6, 6);
    assertEquals("" + "┌────────┐\n" + "│        │\n" + "│ ┌────┐ │\n" + "│ │    │ │\n" + "│ │    │ │\n" + "│ │    │ │\n" + "│ │    │ │\n" + "│ └────┘ │\n" + "│        │\n" + "└────────┘\n" + "", c.toString());
    c.box(0, 0, 6, 6);
    assertEquals("" + "┌────┬───┐\n" + "│    │   │\n" + "│ ┌──┼─┐ │\n" + "│ │  │ │ │\n" + "│ │  │ │ │\n" + "├─┼──┘ │ │\n" + "│ │    │ │\n" + "│ └────┘ │\n" + "│        │\n" + "└────────┘\n" + "", c.toString());
    c.box(6, 6, 4, 4);
    assertEquals("" + "┌────┬───┐\n" + "│    │   │\n" + "│ ┌──┼─┐ │\n" + "│ │  │ │ │\n" + "│ │  │ │ │\n" + "├─┼──┘ │ │\n" + "│ │   ┌┼─┤\n" + "│ └───┼┘ │\n" + "│     │  │\n" + "└─────┴──┘\n" + "", c.toString());
}