public override House makeHouse(string typeOfHouse) { House myHouse = null; IHouseBuilder myBuilder = null; if (typeOfHouse.Equals("Resident")) { myBuilder = new ResidentBuilder(); myHouse = new Resident(myBuilder); myHouse.setName("Resident House"); } else if (typeOfHouse.Equals("Office")) { myBuilder = new OfficeBuilder(); myHouse = new Office(myBuilder); myHouse.setName("Office"); } else if (typeOfHouse.Equals("Shop")) { myBuilder = new ShopBuilder(); myHouse = new Shop(myBuilder); myHouse.setName("Shop"); } return(myHouse); }
private static Shop CreateShop(XElement root, Uri baseUri) { var shopBuilder = new ShopBuilder(baseUri); new ItemsAssembler(root).AssembleItems().ToList().ForEach(item => shopBuilder.AddItem(item)); new LinksAssembler(root).AssembleLinks().ToList().ForEach(link => shopBuilder.AddLink(link)); new FormsAssembler(root, baseUri).AssembleForms().ToList().ForEach(form => shopBuilder.AddForm(form)); return shopBuilder.Build(); }
public void WhenBuildingShop_WithLocationAndInventory_NameAndInventoryAreSet( string locationName, params string[] inventory ) { var shop = new ShopBuilder() .ForLocation(locationName) .WithInventory(inventory) .Build(); shop.Name.Should().Be($"{locationName} Item Shop"); shop.Inventory.Select(x => x.Name).Should().BeEquivalentTo(inventory); }