Wrote intention code for TODO-refactoring: Replace class CellTransitioner with class CellEcology and 18 subclasses.
Fixed Error: Declared class CellEcology.
Fixed Error: Declared class LiveWithZero.
Fixed Error: Declared virtual method CellEcology::transition().
Fixed Error: Declared override method LiveWithZero::transition().
Fixed Error: Declared override method LiveWithOne::transition().
Fixed Error: Defined method LiveWithZero::transition().
Fixed Error: Defined method LiveWithOne::transition().
Added 2 smell TODOs: No conditional statements and no naked primitives.
Refactored the test Any_live_cell_with_fewer_than_two_live_neighbours_dies to make it shorter.
Wrote intention code for test Any_live_cell_with_two_or_three_live_neighbours_lives_on.
Fixed Error: Declared class LiveWithTwo with its override method.
Fixed Error: Declared class LiveWithThree with its override method.
Fixed Error: Defined method LiveWithTwo::transition().
Fixed Error: Defined method LiveWithThree::transition().
Wrote intention code for test Any_live_cell_with_more_than_three_live_neighbours_dies.
Fixed Error: Declared class LiveWithFour, LiveWithFive, LiveWithSix, LiveWithSeven and LiveWithEight.
Fixed Errors: Defined method transition() for class LiveWithFour, LiveWithFive, LiveWithSix, LiveWithSeven and LiveWithEight.
Refactored the 3 tests to make them shorter.
Wrote intention code for test Any_dead_cell_with_exactly_three_live_neighbours_becomes_a_live_cell.