public void TestInitialSpyPlacement() { var env = TileLogic; env.GetTileLogic(); var envDict = env.GetTileTypes(); var envTiles = new List <IEnvTile>(); envDict[TileType.FreeTiles].ForEach(tile => envTiles.Add(tile)); envDict[TileType.SpyTile].ForEach(tile => envTiles.Add(tile)); envDict[TileType.GuardTiles].ForEach(tile => envTiles.Add(tile)); IAgentTileConverter converter = new SpyAgentTileConverter(envTiles, _spyPredicate); var agentTiles = converter.GetAgentTiles(); Assert.AreEqual( agentTiles.First(tile => tile.OccupiedByAgent).Coords, envDict[TileType.SpyTile][0].Coords ); }
public void TestInitialGuardPlacement() { var env = TileLogic; env.GetTileLogic(); var envDict = env.GetTileTypes(); var envTiles = new List <IEnvTile>(); envDict[TileType.FreeTiles].ForEach(tile => envTiles.Add(tile)); envDict[TileType.SpyTile].ForEach(tile => envTiles.Add(tile)); envDict[TileType.GuardTiles].ForEach(tile => envTiles.Add(tile)); IAgentTileConverter converter = new SpyAgentTileConverter(envTiles, _guardPredicate); var agentTiles = converter.GetAgentTiles(); var guardAgentTiles = agentTiles .Where(tile => tile.OccupiedByAgent) .OrderBy(tile => tile.Coords.y).ToList(); var orderedGuardTiles = envDict[TileType.GuardTiles].OrderBy(tile => tile.Coords.y).ToList(); Assert.AreEqual(guardAgentTiles[0].Coords, orderedGuardTiles[0].Coords); }