public void TestAdvanceEastWhenAtEdgeOfGrid() { var originalPosition = new GridPoint(9, 2); _terrainGridInstance = new TerrainGrid(10, 10); var newPosition = _terrainGridInstance.AdvanceEast(originalPosition); Assert.IsTrue(newPosition.X == 0); Assert.IsTrue(newPosition.Y == originalPosition.Y); }
public Robot(ITerrainGrid terrain, GridPoint position, CompassDirection facingDirection) { if (!terrain.IsInTerrainLimits(position)) { throw new System.ArgumentException($"Specified grid point ({position.X},{position.Y}) is outside arena limits."); } _arenaTerrainGrid = terrain; CurrentCompassOrientation = facingDirection; CurrentGridPosition = position; }
public void TestAdvanceSouthWhenAtEdgeOfGrid() { var originalPosition = new GridPoint(2, 0); _terrainGridInstance = new TerrainGrid(10, 10); var newPosition = _terrainGridInstance.AdvanceSouth(originalPosition); Assert.IsTrue(newPosition.X == originalPosition.X); Assert.IsTrue(newPosition.Y == 9); }
public void TestAdvanceWest() { var originalPosition = new GridPoint(2, 2); _terrainGridInstance = new TerrainGrid(10, 10); var newPosition = _terrainGridInstance.AdvanceWest(originalPosition); Assert.IsTrue(newPosition.X == originalPosition.X - 1); Assert.IsTrue(newPosition.Y == originalPosition.Y); }
public void TestObstacleNOTExists() { var obstacles = new List <GridPoint>(); int MaxX = new Random().Next(0, 100); int MaxY = new Random().Next(0, 100); GridPoint obstaclePosition = new GridPoint(new Random().Next(0, MaxX), new Random().Next(0, MaxY)); obstacles.Add(new GridPoint(obstaclePosition.X + 1, obstaclePosition.Y)); _terrainGridInstance = new TerrainGrid(MaxX, MaxY, obstacles); var obstacleExists = _terrainGridInstance.ObstacleExists(obstaclePosition); Assert.IsFalse(obstacleExists); }
public Robot(ITerrainGrid terrain) : this(terrain, new GridPoint(0, 0), CompassDirection.NORTH) { }
public Rover(ITerrainGrid terrain, GridPoint initialPosition, CompassDirection orientation) : this(terrain) { CompassCurrentOrientation = orientation; CurrentGridPosition = initialPosition; }
public Rover(ITerrainGrid terrain) { _planetTerrainGrid = terrain; CompassCurrentOrientation = CompassDirection.NORTH; CurrentGridPosition = new GridPoint(0, 0); }
public void SetUp() { _target = new TerrainGrid(5, 5); }