private void MakeAndDisplaySandwich(SandwichDirector director) { director.MakeSandwich(); var sandwich = director.GetSandwhich(); sandwich.Display(); }
public override void Execute() { var cheapSandwichBuilder = new CheapSandwichBuilder(); var premiumSandwichBuilder = new PremiumSandwichBuilder(); var director = new SandwichDirector(cheapSandwichBuilder); MakeAndDisplaySandwich(director); // This is not common to see, but it is possible to change builder if necessary. director.ChangeBuilder(premiumSandwichBuilder); MakeAndDisplaySandwich(director); }
public void TestVersion01() { SandwichDirector sandwichDirector = new SandwichDirector(new MySandwichBuilder()); sandwichDirector.BuildSandwich(); Sandwich sandwich1 = sandwichDirector.Sandwhich; sandwich1.Display(); SandwichDirector sandwichDirector2 = new SandwichDirector(new ClubSandwichBuilder()); sandwichDirector2.BuildSandwich(); Sandwich sandwich2 = sandwichDirector2.Sandwhich; sandwich2.Display(); }
public void CreateStandardSandwich() { var sut = new SandwichDirector(new StandardSandwichBuilder()); sut.BuildSandwich(); var actual = sut.GetSandwich(); var expected = new SandwichResemblance { HasMayo = false, HasMustard = true, Vegetables = new List <string> { "Tomato", "Onion" }, CheeseType = CheeseType.Cheddar, MeatType = MeatType.Turkey, BreadType = BreadType.White, IsToasted = true }; Assert.True(expected.Equals(actual)); }