public BounceDirection.Direction GetDirectionsFromCoordinates(List <Coordinates> coordinates) { List <Direction> directionsToProcess = new List <Direction>(); TTPointsEngine pointsEngine = new TTPointsEngine(); for (int i = 0; i < coordinates.Count; i++) { directionsToProcess.Add(pointsEngine.DetermineDirectionOfBall(coordinates[i], coordinates[i + 1])); } return(BounceDirection(directionsToProcess)); }
public void DetermineDirectionOfBall_WhenBallTravelsSouthWest() { var pointsEngine = new TTPointsEngine(); Coordinates previousPosition = new Coordinates(5, 1); Coordinates currentPosition = new Coordinates(3, 5); var result = pointsEngine.DetermineDirectionOfBall(previousPosition, currentPosition); Assert.AreEqual(Direction.SouthWest, result); }
public void DetermineDirectionOfBall_WhenBallTravelsNorth() { var pointsEngine = new TTPointsEngine(); Coordinates previousPosition = new Coordinates(5, 6); Coordinates currentPosition = new Coordinates(5, 3); var result = pointsEngine.DetermineDirectionOfBall(previousPosition, currentPosition); Assert.AreEqual(Direction.North, result); }
public void DetermineDirectionOfBall_WhenWeGet2Coordinates_GivesADirection() { var pointsEngine = new TTPointsEngine(); Coordinates firstPoint = new Coordinates(3, 1); Coordinates secondPoint = new Coordinates(5, 4); var result = pointsEngine.DetermineDirectionOfBall(firstPoint, secondPoint); Assert.IsTrue(result.GetType() == typeof(Direction)); }