public void TestMethod1() { AbstractCarBuilder carABuilder = new CarABuilder(ASequence); AbstractCarModel carAModel = (CarAModel)carABuilder.GetCarModel(); carAModel.Run(); AbstractCarBuilder carBBuilder = new CarBBuilder(CSequence); AbstractCarModel carBModel = (CarBModel)carBBuilder.GetCarModel(); carBModel.Run(); //Debug Trace: //I' am going to run //A: Start //A: EngineBoom //A: Alarm // I' am going to run //B: Start //B: EngineBoom //B: EngineBoom //B: Alarm //B: Stop }
void CSequence(AbstractCarModel a) { a.Start(); a.EngineBoom(); a.EngineBoom(); a.Alarm(); a.Stop(); }