Ejemplo n.º 1
0
        public Car CreateCar()
        {
            int      carCost = 0;
            string   model;
            bool     result          = false;
            int      nummberOfBody   = 0;
            int      nummberOfEngine = 0;
            ICarBody bodyCar;
            IEngine  engineCar;
            string   enterTheCost   = "Enter the cost of the car";
            string   choseTheBody   = "Choose a car body \r\n 1.Coupe \r\n 2.Hatchback \r\n 3.Minivan ";
            string   choseTheEngine = "Choose a car engine \r\n 1.DieselEngine \r\n 2.ElectricalEngine \r\n 3.GasolineEngine ";

            Console.WriteLine("Enter the name of the car");
            model = Console.ReadLine();
            InputValidation(result, enterTheCost, ref carCost, 0, 9223372036854000000);
            InputValidation(result, choseTheBody, ref nummberOfBody, 1, 3);

            switch (nummberOfBody)
            {
            case 1: bodyCar = new Coupе();;
                break;

            case 2:
                bodyCar = new Hatchback();;
                break;

            case 3:
                bodyCar = new Minivan();;
                break;

            default: bodyCar = null;
                break;
            }

            InputValidation(result, choseTheEngine, ref nummberOfEngine, 1, 3);


            switch (nummberOfEngine)
            {
            case 1:
                engineCar = new DieselEngine();;
                break;

            case 2:
                engineCar = new ElectricalEngine();;
                break;

            case 3:
                engineCar = new GasolineEngine();;
                break;

            default:
                engineCar = null;
                break;
            }
            Console.WriteLine();
            return(new Car(engineCar, bodyCar, carCost, model, IdOfCar));
        }
Ejemplo n.º 2
0
 public Car(string name, double? mileage, double weight, string additionalInfo,
     Pilot pilot, double fuelTank, GasolineEngine engine)
     : base(name, mileage, weight, additionalInfo, pilot)
 {
     if (fuelTank < 0) throw new ArgumentException("fuel tank volume can't be below or equal zero");
     FuelTank = fuelTank;
     Engine = engine;
     FuelType = new Petrol();
     AccelerationSpeed = GetAccelerationSpeed();
 }
        public void Should_Show_Message_With_Name_And_Speed_When_Speed_Up_Car()
        {
            //given
            var expected = "Cool Car: speed up 30 km/h";
            //when
            var engine = new GasolineEngine();
            var car    = new Car("Cool Car", engine);
            var actual = car.SpeedUp();

            //then
            Assert.Equal(actual, expected);
        }
        public void Should_Has_Gasoline_Enginee_And_Has_Speed_30()
        {
            //given
            var expected = "Cool Car: speed up 30 km/h";
            //when
            var engine  = new GasolineEngine();
            var vehicle = new Car("Cool Car", engine);
            var driver  = new Driver(vehicle);
            var actual  = driver.SpeedUp();

            //then
            Assert.Equal(actual, expected);
        }
        public void Should_Drive_Car_And_Show_Message_When_Speed_Up()
        {
            //given
            var expected = "Cool Car: speed up 30 km/h";
            //when
            var engine  = new GasolineEngine();
            var vehicle = new Car("Cool Car", engine);
            var driver  = new Driver(vehicle);
            var actual  = driver.SpeedUp();

            //then
            Assert.Equal(actual, expected);
        }
        public static void Main(string[] args)
        {
            var engine = new GasolineEngine
            {
                Model           = "aQR25DE",
                Description     = "Nissan X-Trail",
                Power           = 175,
                NumOfSparkPlugs = 4,
                //Cost = 2300
                Cost = 1000
            };

            var cylinder = new Cylinder
            {
                Diameter       = 89,
                WearOutPercent = 0
            };

            engine.Cylinders.Add(cylinder.Clone());
            engine.Cylinders.Add(cylinder.Clone());
            engine.Cylinders.Add(cylinder.Clone());
            engine.Cylinders.Add(cylinder.Clone());

            engine.Cylinders.Last().WearOutPercent = 80;


            IValidator validator = new ObjectValidator();

            IEnumerable <ValidationResult> report = validator.Validate(engine);



            var errors = report.ToArray();

            Console.ReadLine();
        }
Ejemplo n.º 7
0
 public SportCar(string name, double? mileage, double weight, string additionalInfo,
     Pilot pilot, double fuelTank, GasolineEngine engine)
     : base(name, mileage, weight, additionalInfo, pilot, fuelTank, engine)
 {
     DownForcePressure = 0;
 }
Ejemplo n.º 8
0
 private GasolineEngine CreateGasolineEngine(int horsePowers, EngineTypes engineTypes)
 {
     var engine = new GasolineEngine(horsePowers, engineTypes);
     OnEngineCreation(engine);
     return engine;
 }
Ejemplo n.º 9
0
 private static void OnEngineCreation(GasolineEngine engine)
 {
     //test engine on stand
 }