12 of 17 tests passing using test-driven development