Exemplo n.º 1
0
        public void ConstructorShallSetGuid()
        {
            var guid     = Guid.NewGuid();
            var building = new SingleTileBuilding(guid, Angle.Zero);

            Assert.AreEqual(guid, building.Guid);
        }
Exemplo n.º 2
0
        public void GetTilesOfBuilding_ShallBetProperTiles()
        {
            var map             = new Map(Height, Width);
            var building        = new SingleTileBuilding(Guid.NewGuid(), Angle.Zero);
            var tilesOfBuilding = new List <ITile> {
                map[0, 0]
            };

            map.AddBuilding(building, tilesOfBuilding);
            Assert.AreEqual(tilesOfBuilding, map.GetTilesOfBuilding(building));
        }
Exemplo n.º 3
0
        public void TryingToPlaceBuilding_AtTilesOccupiedByAnotherBuilding_ShallThrowException()
        {
            var map             = new Map(Height, Width);
            var building        = new SingleTileBuilding(Guid.NewGuid(), Angle.Zero);
            var tilesOfBuilding = new List <ITile> {
                map[0, 0]
            };

            map.AddBuilding(building, tilesOfBuilding);

            Assert.Throws <ArgumentException>(() => map.AddBuilding(building, tilesOfBuilding));
        }
Exemplo n.º 4
0
        public void GetBuildings_ShallGetAllBuildings()
        {
            var map              = new Map(Height, Width);
            var building1        = new SingleTileBuilding(Guid.NewGuid(), Angle.Zero);
            var tilesOfBuilding1 = new List <ITile> {
                map[0, 0]
            };

            var building2        = new LongOrthogonalBuilding(Guid.NewGuid(), Angle.Zero);
            var tilesOfBuilding2 = new List <ITile> {
                map[1, 1]
            };

            map.AddBuilding(building2, tilesOfBuilding1);
            map.AddBuilding(building1, tilesOfBuilding2);

            var buildings = map.GetBuildings().ToList();

            Assert.AreEqual(2, buildings.Count());
            Assert.True(buildings.Contains(building1));
            Assert.True(buildings.Contains(building2));
        }