public void HowFar_IsCorrect_After2Turns(string first, string second) { var gps = new Gps(); gps.Move(new Turn(first)); gps.Move(new Turn(second)); Assert.Equal(4, gps.HowFar()); }
public void HowFar_IsCorrect_After3Turns_WithALoopback() { var gps = new Gps(); gps.Move(new Turn("R2")); gps.Move(new Turn("R2")); gps.Move(new Turn("R2")); Assert.Equal(2, gps.HowFar()); }
public void HowFar_IsEqualToBlocks_AfterOneMove(string direction, int blocks) { var turn = new Turn(direction, blocks); var gps = new Gps(); gps.Move(turn); Assert.Equal(blocks, gps.HowFar()); }
public void HowFar_IsCorrect_AfterCombinationTurns() { var gps = new Gps(); gps.Move(new Turn("R5")); gps.Move(new Turn("L5")); gps.Move(new Turn("R5")); gps.Move(new Turn("R3")); Assert.Equal(12, gps.HowFar()); }
public void HowFar_IsZero_AfterNoMoves() { var gps = new Gps(); Assert.Equal(0, gps.HowFar()); }