public void FindLargestHouse_WhenComparingALuxuryAndSimpleHouse() { // Arrange House simpleHouse = new TestHouseBuilder().CreateSimpleHouse().Build(); House luxuryHouse = new TestHouseBuilder().CreateComplexHouse(numberOfFloors: 4, roomsPerFloor: 10).Build(); Neighbourhood neighbourhood = TestNeighbourhood.Create().WithHouses(luxuryHouse, simpleHouse); // Act var largestHouse = new HouseFinder(neighbourhood).FindLargestHouse(); // Assert largestHouse.Should().Be(luxuryHouse); }
public void FindRoomForFriendsMeetup_WhenTheLargestRoomIsInBasement_ThenReturnSecondLargestRoom() { // Arrange House house = new TestHouseBuilder().SetFloors( new TestFloorBuilder(level: -1).AddRoom("Basement", size: 60).Build(), new TestFloorBuilder(level: 1).AddRoom("Kitchen", size: 10).AddRoom("Living Room", size: 40).Build()) .Build(); // Act (int level, string roomName) = new RoomFinder(house).FindRoomForFriendsMeetup(); // Assert level.Should().Be(1); roomName.Should().Be("Living Room"); }
public void FindRoomForFriendsMeetup_WhenOnlyOneLargestRoomExist_ThenReturnLargestRoom() { // Arrange House house = new TestHouseBuilder().SetFloors( new TestFloorBuilder(level: 1).AddRoom("Kitchen", size: 10).AddRoom("Living Room", size: 40).Build(), new TestFloorBuilder(level: 2).AddRoom("Bathroom", size: 5).AddRoom("Bedroom", size: 10).Build()) .WithGarage().WithPool().WithGarden() .Build(); // Act (int level, string roomName) = new RoomFinder(house).FindRoomForFriendsMeetup(); // Assert level.Should().Be(1); roomName.Should().Be("Living Room"); }
public TestFloorBuilder(TestHouseBuilder parent, int level) { _parent = parent; Level = level; }