run routine f with a keyboard channel containing #\a and a fake screen check that fake screen contains 'a' at (5, 5) --- ; At its core, an editor is a 2D array of characters and a cursor. given [ editor 5 5 ] Cursor should be at (0 0) now [ type "abc" ] Cursor should be at (0 3) "abc" should be at (0 0) Trace should contain [ typed "a" typed "b" typed "c" ] --- Extract unit tests for helper out of all existing tests.