Example #1
0
    private void Start()
    {
        Engineer engineer = new Engineer();

        CarBuilder carBuilder = GetComponent <CarBuilder>();

        carBuilder.makeVehicle();

        MotorCycleBuilder motorCycleBuilder = GetComponent <MotorCycleBuilder>();

        motorCycleBuilder.makeVehicle();

        engineer.Construct(carBuilder);
        engineer.Construct(motorCycleBuilder);

        Vehicle car = carBuilder.getVehicle();

        Debug.Log(car.GetPartsList());

        Vehicle motorCycle = motorCycleBuilder.getVehicle();

        Debug.Log(motorCycle.GetPartsList());

        car.transform.position        = new Vector3(-3f, 0, 0);
        motorCycle.transform.position = new Vector3(3f, 0, 0);
    }
    void Start()
    {
        // Instantiate the director and builders
        ShopForeman shopForeman = new ShopForeman();
        CarBuilder carBuilder = new CarBuilder();
        MotorCycleBuilder motorCycleBuilder = new MotorCycleBuilder();
        ScooterBuilder scooterBuilder = new ScooterBuilder();

        // Make the products, the vehicles.
        shopForeman.Construct(carBuilder);
        shopForeman.Construct(motorCycleBuilder);
        shopForeman.Construct(scooterBuilder);

        // Get the vehicles and access their methods.
        Vehicle car = carBuilder.vehicle;
        Debug.Log(car.GetPartsList());
        
        Vehicle motorCycle = motorCycleBuilder.vehicle;
        Debug.Log(motorCycle.GetPartsList());

        Vehicle scooter = scooterBuilder.vehicle;
        Debug.Log(scooter.GetPartsList());


        // These calls don't have anything to do with the pattern.
        // They are simply here to make our visual display of the vehicles
        // in the Unity scene look nice.
        car.parent.transform.position = new Vector3(-6f, 0, 0);
        motorCycle.parent.transform.position = new Vector3(6f, 0, 0);
    }
Example #3
0
        public void TestHandlerAccelerate(double initialVelocity, double distanceToTarget, int cycles, double expectedVelocity)
        {
            var road = new Road(new Vector(0, 50), new Vector(50, 50), 20, 100);
            var city = new CityBuilder()
                       .Road(road)
                       .Build();

            var car = new CarBuilder()
                      .Location(new Vector(10, 60))
                      .Direction(DirectionCar.East)
                      .Sensor(Car => new LineSensor(Car, Direction.Left))
                      .Sensor(Car => new LineSensor(Car, Direction.Right))
                      .CurrentRoad(road)
                      .Build();
            var controller = car.Controller;

            var velocity = new Vector(initialVelocity, 0.0);

            for (var time = 0; time < cycles; time++)
            {
                car.Sensors.ForEach(sensor => sensor.Controller.Update());
                car.Controller.HandleAccelerate(ref velocity, ref distanceToTarget);
            }

            Assert.AreEqual(expectedVelocity, velocity.Length, 0.01);
            Assert.AreEqual(expectedVelocity, velocity.X, 0.01);
            Assert.AreEqual(0, velocity.Y, 0.01);
        }
Example #4
0
        public void TestHandleApproachTarget(double targetX, double targetY, double initialVelocity, double expectedSpeed, double expectedRotation)
        {
            var road = new Road(new Vector(0, 50), new Vector(50, 50), 20, 100);
            var city = new CityBuilder()
                       .Road(road)
                       .Build();

            var car = new CarBuilder()
                      .Location(new Vector(10, 55))
                      .Direction(DirectionCar.East)
                      .Sensor(Car => new LineSensor(Car, Direction.Left))
                      .Sensor(Car => new LineSensor(Car, Direction.Right))
                      .CurrentRoad(road)
                      .Build();

            car.Destination = new Destination
            {
                Location = new Vector(targetX, targetY),
                Road     = road
            };
            var controller = car.Controller;

            var velocity              = new Vector(initialVelocity, 0.0);
            var yaw                   = 0.0;
            var addedRotation         = 0.0;
            var distanceToDestination = 10000.0;

            controller.HandleApproachTarget(ref velocity, ref yaw, ref addedRotation, ref distanceToDestination);

            Assert.AreEqual(expectedSpeed, velocity.Length, 0.01);
        }
Example #5
0
        public void TestHandleStayInLane(double carX, double carY, double expectedRotation)
        {
            var road = new Road(new Vector(0, 50), new Vector(50, 50), 20, 100);
            var city = new CityBuilder()
                       .Road(road)
                       .Build();

            var car = new CarBuilder()
                      .Location(new Vector(carX, carY))
                      .Direction(DirectionCar.East)
                      .Sensor(Car => new LineSensor(Car, Direction.Left))
                      .Sensor(Car => new LineSensor(Car, Direction.Right))
                      .CurrentRoad(road)
                      .Build();
            var controller = car.Controller;

            var velocity      = new Vector();
            var yaw           = 0.0;
            var addedRotation = 0.0;

            car.Sensors.ForEach(sensor => sensor.Controller.Update());
            controller.HandleStayInLane(ref velocity, ref yaw, ref addedRotation);

            Assert.AreEqual(new Vector(), velocity);
            Assert.AreEqual(0.0, yaw, 0.01);
        }
Example #6
0
        public void TestUpdateStayInLane(double carX, double carY, double targetX, double targetY, int cycles, double expectedX, double expectedY)
        {
            var road = new Road(new Vector(0, 50), new Vector(50, 50), 20, 100);
            var city = new CityBuilder()
                       .Road(road)
                       .Build();

            var car = new CarBuilder()
                      .Location(new Vector(carX, carY))
                      .Direction(DirectionCar.East)
                      .Sensor(Car => new LineSensor(Car, Direction.Left))
                      .Sensor(Car => new LineSensor(Car, Direction.Right))
                      .CurrentRoad(road)
                      .Build();

            car.Destination = new Destination
            {
                Location = new Vector(targetX, targetY),
                Road     = road
            };
            var controller = car.Controller;

            for (var time = 0; time < cycles; time++)
            {
                car.Sensors.ForEach(sensor => sensor.Controller.Update());
                car.Controller.Update();
            }

            Assert.AreEqual(expectedY, car.Location.Y, 1.0);
        }
Example #7
0
            /// <summary>
            /// Entry point into console application.
            /// </summary>
            public static void Main222()
            {
                prodA obja = new prodA();
                   var  obja1 = new productclass();
                  // obja1 = obja;
                obja.print();
                obja1.print();
                VehicleBuilder builder;

                // Create shop with vehicle builders
                Shop shop = new Shop();

                // Construct and display vehicles
                builder = new ScooterBuilder();
                shop.Construct(builder);
                builder.Vehicle.Show();

                builder = new CarBuilder();
                shop.Construct(builder);
                builder.Vehicle.Show();

                builder = new MotorCycleBuilder();
                shop.Construct(builder);
                builder.Vehicle.Show();

                // Wait for user
                Console.ReadKey();
            }
Example #8
0
 public void MakeSportCar(CarBuilder builder)
 {
     builder.SetBrand();
     builder.SetEngine(new SportEngine());
     builder.SetSeats(4);
     builder.SetGPS(true);
 }
        static void Main(string[] args)
        {
            VehicleBuilder builder;

            // Create shop with vehicle builders

            Shop shop = new Shop();

            // Construct and display vehicles

            builder = new ScooterBuilder();
            shop.Construct(builder);
            builder.Vehicle.Show();

            builder = new CarBuilder();
            shop.Construct(builder);
            builder.Vehicle.Show();

            builder = new MotorCycleBuilder();
            shop.Construct(builder);
            builder.Vehicle.Show();

            // Wait for user

            Console.ReadKey();
        }
Example #10
0
 public void Constructor(CarBuilder car, Dictionary<string, string> s)
 {
     car.Set_details("wheel", s["wheel"]);
     car.Set_details("color", s["color"]);
     car.Set_details("cuzov", s["cuzov"]);
     car.Set_details("salon", s["salon"]);
 }
Example #11
0
        public void TestOutOfRangeCollisionSensor(Direction directionSensor, DirectionCar directionCar, double range, double carX, double carY, double secCarX, double secCarY)
        {
            var city = new CityBuilder()
                       .Road(new Vector(10, 0), new Vector(10, 50), 40)
                       .Build();

            var sensorCar = new CarBuilder()
                            .Location(new Vector(carX, carY))
                            .Direction(directionCar)
                            .Sensor(car => new CollisionSensor(car, directionSensor, range))
                            .Build();

            city.Cars.Add(sensorCar);
            city.Cars.Add(new CarBuilder()
                          .Location(new Vector(secCarX, secCarY))
                          .Direction(directionCar)
                          .Build());
            var sensor = sensorCar.Controller.GetSensors <CollisionSensor>(directionSensor).First();

            sensor.SubScribeSensorEvent(EventThrownBad);

            sensor.Controller.Update();

            Assert.Pass();
        }
Example #12
0
        [TestCase(0, 0, 0, -100, 50)] // right out of range
        public void TestEntityRadarOutOfRange(double carX, double carY, double secCarX, double secCarY, double range)
        {
            var city = new CityBuilder()
                       .Road(new Vector(0, 50), new Vector(10, 50), 10)
                       .Road(new Vector(0, 20), new Vector(10, 20), 10)
                       .Build();
            var sensorCar = new CarBuilder()
                            .Location(new Vector(carX, carY))
                            .Direction(DirectionCar.East)
                            .Sensor(car => new EntityRadar(car, range))
                            .Build();

            city.Cars.Add(sensorCar);
            var secCar = (new CarBuilder()
                          .Location(new Vector(secCarX, secCarY))
                          .Direction(DirectionCar.East)
                          .Build());

            city.Cars.Add(secCar);
            var sensor = sensorCar.Controller.GetSensors <EntityRadar>(Direction.Global).First();

            sensor.Controller.Update();

            if (sensor.EntitiesInRange.Count > 0)
            {
                Assert.Fail();
            }
            else
            {
                Assert.Pass();
            }
        }
Example #13
0
        public void Create_ShouldReturnViewModel()
        {
            //---------------Set up test pack-------------------
            var partRepository = Substitute.For <IPartRepository>();
            var carRepository  = Substitute.For <ICarRepository>();
            var mapperEngine   = Substitute.For <IMappingEngine>();

            var part  = new PartBuilder().Build();
            var parts = new List <TestHabanero.BO.Part> {
                part
            };
            var car  = new CarBuilder().Build();
            var cars = new List <Car> {
                car
            };

            partRepository.GetParts().Returns(parts);
            carRepository.GetCars().Returns(cars);
            var partController = CreateBuilder()
                                 .WithMappingEngine(mapperEngine)
                                 .WithPartRepository(partRepository)
                                 .WithCarRepository(carRepository)
                                 .Build();
            //---------------Assert Precondition----------------
            //---------------Execute Test ----------------------
            var result = partController.Create() as ViewResult;

            //---------------Test Result -----------------------
            Assert.IsNotNull(result);
        }
Example #14
0
        private static void ShowBuilder()
        {
            Console.WriteLine("================================================");
            Console.WriteLine("Pattern code (Builder):");
            Director director = new Director();

            Builder b1 = new ConcreteBuilder1();
            Builder b2 = new ConcreteBuilder2();

            director.Construct(b1);
            Product p1 = b1.GetResult();

            p1.Show();

            director.Construct(b2);
            Product p2 = b2.GetResult();

            p2.Show();

            Console.WriteLine("Real code (Builder):");
            Shop shop = new Shop();

            VehicleBuilder builder = new ScooterBuilder();

            shop.Construct(builder);
            builder.Vehicle.Show();

            builder = new CarBuilder();
            shop.Construct(builder);
            builder.Vehicle.Show();

            builder = new MotorCycleBuilder();
            shop.Construct(builder);
            builder.Vehicle.Show();
        }
Example #15
0
        private void СreateCar_Click(object sender, EventArgs e)
        {
            CarBuilder[] bld = new CarBuilder[(int)numericUpDown1.Value];
            Car[]        c   = new Car[bld.Length];
            for (int i = 0; i < bld.Length; i++)
            {
                switch (comboBox5.Text)
                {
                case "Большая машина":
                    bld[i] = new Большая_машина();
                    break;

                case "Красивая машина":
                    bld[i] = new Красивая_машина();
                    break;

                case "Некрасивая машина":
                    bld[i] = new Некрасивая_машина();
                    break;

                default: return;
                }
                dir.Constructor(bld[i], detal);
                c[i] = bld[i].GetCar();
            }
            textBox1.Text += $"Ура! Вы создали {c.Length} {c[0].Name}";
            textBox1.Text += c[0].Show();
            textBox1.Text += "\r\n";
        }
Example #16
0
        public void CreateCar()
        {
            VehicleBuilder vehicleBuilder = new CarBuilder();

            VehicleDirector.Construct(vehicleBuilder, "v8", "4", "4");
            vehicleBuilder.Vehicle.ShowVehicle();
        }
Example #17
0
        private void btnBuilder_Click(object sender, EventArgs e)
        {
            // ------------------------------------------------------------------------
            // Builder Pattern
            // https://dofactory.com/net/builder-design-pattern
            // Frequency of use: 3 - Medium low

            txtOutput.Text = "";

            VehicleBuilder builder;

            // Create shop with vehicle builders
            Shop shop = new Shop();

            // Construct and display vehicles
            builder = new ScooterBuilder();
            shop.Construct(builder);
            txtOutput.Text += builder.Vehicle.Show();

            builder = new CarBuilder();
            shop.Construct(builder);
            txtOutput.Text += builder.Vehicle.Show();

            builder = new MotorCycleBuilder();
            shop.Construct(builder);
            txtOutput.Text += builder.Vehicle.Show();
        }
Example #18
0
        public void Index_GivenAllUsersReturnedFromRepository_ShouldReturnViewModel()
        {
            //---------------Set up test pack-------------------
            var car      = new CarBuilder().WithNewId().Build();
            var part     = new PartBuilder().WithNewId().Build();
            var carPart  = new CarPartBuilder().WithNewId().WithCar(car).WithPart(part).Build();
            var carParts = new List <CarPart> {
                carPart
            };
            var repository    = Substitute.For <ICarPartRepository>();
            var mappingEngine = ResolveMapper();

            repository.GetCarPart().Returns(carParts);

            var partController = CreateBuilder()
                                 .WithCarPartRepository(repository)
                                 .WithMappingEngine(mappingEngine)
                                 .Build();
            //---------------Assert Precondition----------------
            //---------------Execute Test ----------------------
            var result = partController.Index() as ViewResult;

            //---------------Test Result -----------------------
            Assert.IsNotNull(result);
            var model = result.Model as List <CarPartsIndexViewModel>;

            Assert.IsInstanceOf <List <CarPartsIndexViewModel> >(model);
            Assert.AreEqual(carPart.CarPartId, model.FirstOrDefault().CarPartId);
            Assert.AreEqual(carPart.CarId, model.FirstOrDefault().CarId);
            Assert.AreEqual(carPart.PartId, model.FirstOrDefault().PartId);
            Assert.AreEqual(carPart.Quantity, model.FirstOrDefault().Quantity);
        }
Example #19
0
 public Car Build(CarBuilder builder)
 {
     builder.SetHorsePower();
     builder.SetTopSpeed();
     builder.SetImpressiveFeature();
     return(builder.GetCar());
 }
Example #20
0
        public void BuilderTest()
        {
            VehicleBuilder builder;

            // Create shop with vehicle builders

            Shop shop = new Shop();

            // Construct and display vehicles

            builder = new ScooterBuilder();
            shop.Construct(builder);
            Assert.IsTrue(builder.Vehicle.VehicleType == "Scooter");
            Assert.IsTrue(builder.Vehicle.Parts["frame"] == "Scooter Frame");
            Assert.IsTrue(builder.Vehicle.Parts["engine"] == "50 cc");
            Assert.IsTrue(builder.Vehicle.Parts["wheels"] == "2");
            Assert.IsTrue(builder.Vehicle.Parts["doors"] == "0");

            builder = new CarBuilder();
            shop.Construct(builder);
            Assert.IsTrue(builder.Vehicle.VehicleType == "Car");
            Assert.IsTrue(builder.Vehicle.Parts["frame"] == "Car Frame");
            Assert.IsTrue(builder.Vehicle.Parts["engine"] == "2500 cc");
            Assert.IsTrue(builder.Vehicle.Parts["wheels"] == "4");
            Assert.IsTrue(builder.Vehicle.Parts["doors"] == "4");

            builder = new MotorcycleBuilder();
            shop.Construct(builder);
            Assert.IsTrue(builder.Vehicle.VehicleType == "Motorcycle");
            Assert.IsTrue(builder.Vehicle.Parts["frame"] == "Motorcycle Frame");
            Assert.IsTrue(builder.Vehicle.Parts["engine"] == "500 cc");
            Assert.IsTrue(builder.Vehicle.Parts["wheels"] == "2");
            Assert.IsTrue(builder.Vehicle.Parts["doors"] == "0");
        }
Example #21
0
    void Start()
    {
        // Instantiate the director and builders
        ShopForeman       shopForeman       = new ShopForeman();
        CarBuilder        carBuilder        = new CarBuilder();
        MotorCycleBuilder motorCycleBuilder = new MotorCycleBuilder();
        ScooterBuilder    scooterBuilder    = new ScooterBuilder();

        // Make the products, the vehicles.
        shopForeman.Construct(carBuilder);
        shopForeman.Construct(motorCycleBuilder);
        shopForeman.Construct(scooterBuilder);

        // Get the vehicles and access their methods.
        Vehicle car = carBuilder.vehicle;

        Debug.Log(car.GetPartsList());

        Vehicle motorCycle = motorCycleBuilder.vehicle;

        Debug.Log(motorCycle.GetPartsList());

        Vehicle scooter = scooterBuilder.vehicle;

        Debug.Log(scooter.GetPartsList());


        // These calls don't have anything to do with the pattern.
        // They are simply here to make our visual display of the vehicles
        // in the Unity scene look nice.
        car.parent.transform.position        = new Vector3(-6f, 0, 0);
        motorCycle.parent.transform.position = new Vector3(6f, 0, 0);
    }
Example #22
0
        //public static void addCar()
        //{
        //    CarBuilder builder = new CarBuilder();
        //    builder.getVehicleInfo("A6");
        //    builder.GetVehicle();
        //    MessageBox.Show(builder.GetVehicle().ToString());
        //}

        private void ListViewItem_PreviewMouseLeftButtonUp(object sender, MouseButtonEventArgs e)
        {
            var item = sender as ListViewItem;

            if (item != null)
            {
                //Do your stuff
                //string s = item.ToString();
                //MessageBox.Show(s);
                IVehicleBuilder builder = new CarBuilder();
                builder.getVehicleInfo(item.Content.ToString());

                txtCarManuf.Text        = builder.GetVehicle().Name;
                txtCarModel.Text        = builder.GetVehicle().Model;
                txtCarTransmission.Text = builder.GetVehicle().Transmission;
                txtCarGazType.Text      = builder.GetVehicle().GazType;
                txtEngineLitres.Text    = builder.GetVehicle().EngineLitres.ToString();
                txtPrice.Text           = builder.GetVehicle().Price.ToString();
                txtTypeOfCar.Text       = builder.GetVehicle().TypeOfCar;


                Uri         imageUri1    = new Uri(builder.GetVehicle().Photo2, UriKind.RelativeOrAbsolute);
                BitmapImage imageBitmap1 = new BitmapImage(imageUri1);
                imgCar.Source = imageBitmap1;
            }
        }
    void Start()
    {
        // Instantiate the director and builders
        ShopForeman shopForeman = new ShopForeman();
        CarBuilder carBuilder = new CarBuilder();
        MotorCycleBuilder motorCycleBuilder = new MotorCycleBuilder();
        ScooterBuilder scooterBuilder = new ScooterBuilder();

        // Make the products
        shopForeman.Construct(carBuilder);
        shopForeman.Construct(motorCycleBuilder);
        shopForeman.Construct(scooterBuilder);

        // Get the vehicles and do stuff with them
        Vehicle car = carBuilder.vehicle;
        car.parent.transform.position = new Vector3(-6f, 0, 0);
        Debug.Log(car.GetPartsList());
        
        Vehicle motorCycle = motorCycleBuilder.vehicle;
        motorCycle.parent.transform.position = new Vector3(6f, 0, 0);
        Debug.Log(motorCycle.GetPartsList());

        
        Vehicle scooter = scooterBuilder.vehicle;
        scooter.parent.transform.localScale *= 0.5f;
        Debug.Log(scooter.GetPartsList());
        
    }
Example #24
0
            /// <summary>
            /// Entry point into console application.
            /// </summary>
            public static void Main222()
            {
                prodA obja  = new prodA();
                var   obja1 = new productclass();

                // obja1 = obja;
                obja.print();
                obja1.print();
                VehicleBuilder builder;

                // Create shop with vehicle builders
                Shop shop = new Shop();

                // Construct and display vehicles
                builder = new ScooterBuilder();
                shop.Construct(builder);
                builder.Vehicle.Show();

                builder = new CarBuilder();
                shop.Construct(builder);
                builder.Vehicle.Show();

                builder = new MotorCycleBuilder();
                shop.Construct(builder);
                builder.Vehicle.Show();

                // Wait for user
                Console.ReadKey();
            }
Example #25
0
        private static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");
            var carBuilder = new CarBuilder();
            var car        = new VehicleCreator(carBuilder);

            car.CreateVehicleCaracteristics();
            Console.WriteLine(carBuilder.ToString());

            car.CreateVehicleAcessories();
            Console.WriteLine(carBuilder.ToString());

            //alternativa
            var truckBuilder = new TruckBuilder()
                               .SetModel("FH-420")
                               .SetColor("Black")
                               .SetYear(2020);

            Console.WriteLine(truckBuilder.ToString());

            truckBuilder.SetAcessories(new List <string> {
                "Geladeira", "Capa para bancos", "Alarme"
            });
            Console.WriteLine(truckBuilder.ToString());

            Console.ReadKey();
        }
Example #26
0
        public Car MakeCar()
        {
            CarBuilder cb = ReturnBuilder(Rand.Next(1, 11), true);

            cb.CreateCar();
            return(cb.Car);
        }
Example #27
0
        public void TestCarBuilder()
        {
            var shop = new Shop();

            VehicleBuilder builder = new ScooterBuilder();

            shop.Construct(builder);
            var scooter = builder.Vehicle.Show(true);

            Assert.AreEqual(scooter["frame"], "Scooter Frame");
            Assert.AreEqual(scooter["engine"], "50 cc");
            Assert.AreEqual(scooter["wheels"], "2");
            Assert.AreEqual(scooter["doors"], "0");

            builder = new CarBuilder();
            shop.Construct(builder);
            var car = builder.Vehicle.Show(true);

            Assert.AreEqual(car["frame"], "Car Frame");
            Assert.AreEqual(car["engine"], "2500 cc");
            Assert.AreEqual(car["wheels"], "4");
            Assert.AreEqual(car["doors"], "4");

            builder = new MotorCycleBuilder();
            shop.Construct(builder);
            var motor = builder.Vehicle.Show(true);

            Assert.AreEqual(motor["frame"], "MotorCycle Frame");
            Assert.AreEqual(motor["engine"], "500 cc");
            Assert.AreEqual(motor["wheels"], "2");
            Assert.AreEqual(motor["doors"], "0");
        }
 public Car(CarBuilder builder)
 {
     this.make     = builder.make;
     this.model    = builder.model;
     this.color    = builder.color;
     this.numDoors = builder.numDoors;
     this.hp       = builder.hp;
     this.isManual = builder.isManual;
 }
Example #29
0
        //##################################################################################################################

        public static Car NewCar()
        {
            var builder  = new CarBuilder();
            var director = new VehicleDirector();

            director.VehicleBuilder = builder;
            director.BuildCar();
            return(builder.GetCar());
        }
Example #30
0
    public Car ConstructGreenCar()
    {
        CarBuilder builder = new CarBuilder();

        builder.SetColour("Green");
        builder.SetWheels(4);

        return(builder.GetResult());
    }
Example #31
0
        public void CarBuilderPatternTest()
        {
            AbstractCar     car             = new Saloon(new StandardEngine(1300));
            VehicleBuilder  builder         = new CarBuilder(car);
            VehicleDirector vehicleDirector = new CarDirector();
            IVehicle        veh             = vehicleDirector.Build(builder);

            Console.WriteLine(veh);
        }
Example #32
0
    public Car Construct()
    {
        CarBuilder builder = new CarBuilder();

        builder.SetColour("Red");
        builder.SetWheels(4);

        return builder.GetResult();
    }
Example #33
0
        public override Car Construct()
        {
            CarBuilder.BuildFrame();
            CarBuilder.BuildEngine();
            CarBuilder.BuildWheels();
            CarBuilder.BuildSafety();

            return(CarBuilder.GetCar());
        }
 public void When_Car_IsBuild()
 {
     var builder = new CarBuilder();
     builder
         .BuildFrame()
         .BuildEngine()
         .BuildWheels()
         .BuildDoors()
         .DisplayVehicle();
 }
Example #35
0
        public void WithoutYear_IsInvalid()
        {
            var domain = new CarBuilder()
                         .WithModel("model example")
                         .WithFeatures("features example")
                         .WithId(Guid.Empty)
                         .Build();

            Assert.False(domain.IsValid());
        }
        internal static void Main()
        {
            VehicleBuilder builder;
            var shop = new Shop();

            builder = new ScooterBuilder();
            shop.Construct(builder);
            builder.Vehicle.Show();

            builder = new CarBuilder();
            shop.Construct(builder);
            builder.Vehicle.Show();

            builder = new MotorCycleBuilder();
            shop.Construct(builder);
            builder.Vehicle.Show();
        }
Example #37
0
        public static void Main()
        {
            // We can choose concrete constructor (director)
            IVehicleConstructor constructor = new VehicleConstructor();

            // And we can choose concrete builder
            VehicleBuilder builder = new ScooterBuilder();
            constructor.Construct(builder);
            builder.Vehicle.Show();

            builder = new CarBuilder();
            constructor.Construct(builder);
            builder.Vehicle.Show();

            builder = new MotorCycleBuilder();
            constructor.Construct(builder);
            builder.Vehicle.Show();
        }
Example #38
0
        public override void buildProduct()
        {
            VehicleBuilder builder;

            // Create shop with vehicle builders
            VehicleShop shop = new VehicleShop();

            // Construct and display vehicles
            builder = new ScooterBuilder();
            Vehicle Scooter = shop.Construct(builder);
            Scooter.Show();

            builder = new CarBuilder();
            Vehicle Car = shop.Construct(builder);
            Car.Show();

            builder = new MotorCycleBuilder();
            Vehicle MotorCycle = shop.Construct(builder);
            MotorCycle.Show();
        }
        static void Main(string[] args)
        {
            VehicleBuilder builder;

            // Create shop with vehicle builders
            Shop shop = new Shop();

            // Construct and display vehicles
            builder = new ScooterBuilder();
            shop.Construct(builder);
            builder.Vehicle.Show();

            builder = new CarBuilder();
            shop.Construct(builder);
            builder.Vehicle.Show();

            builder = new MotorCycleBuilder();
            shop.Construct(builder);
            builder.Vehicle.Show();

            // Wait for user
            Console.ReadKey();
        }
  public static void Main( string[] args )
  {
    // Create shop with vehicle builders
    Shop shop = new Shop();
    VehicleBuilder b1 = new ScooterBuilder();
    VehicleBuilder b2 = new CarBuilder();
    VehicleBuilder b3 = new MotorCycleBuilder();

    // Construct and display vehicles
    shop.Construct( b1 );
    b1.Vehicle.Show();

    shop.Construct( b2 );
    b2.Vehicle.Show();

    shop.Construct( b3 );
    b3.Vehicle.Show();
  }