Exemple #1
0
        static void TaskThree()
        {
            // Задача 3* Func, Action + =>
            // В задаче нельзя объявлять делегаты

            /*
             * 1. Создать методы расширения для класса CarPark:
             *  а. Производит выборку из внутренней коллекции используя передаваемую функцию
             *  б. Производит сортировку внутренней коллекции используя передаваемую функцию
             * 2. Создать внутреннее свойство в классе CarPark для хранение действия.
             * 3. Вызывать это действие при добавлении новой машины в парк:
             *   => Как вариант выводить в консоль информацию о машине
             *   Console: Toyota RAV4 was added to the park. It costs ... $.
             */
            var group = new CarPark(message => Console.WriteLine(message));

            group.AddCars(new ElectroCar("Tesla", "S", 2009, 85, 70000), new ElectroCar("Tesla", "X", 2012, 75, 100000), new ElectroCar("Tesla", "3", 2016, 100, 49000),
                          new FuelCar("Porsche", "Panamera", 2009, 80, 80000), new FuelCar("Mersedes", "Gelentwagen", 2018, 120, 115000), new FuelCar("Ford", "Focus", 1991, 100, 16000));

            Console.WriteLine("\n\n**** FIRST LOOK ON OUR CAR PARK ****\n\n");
            group.ShowCars();

            group.SortCars((a, b) => a.Price.CompareTo(b.Price));
            Console.WriteLine("\n\n**** SECOND LOOK ON OUR CAR PARK AFTER SORTING ****\n\n");
            group.ShowCars();

            Console.WriteLine("\n\n**** LET'S TAKE A LOOK ON THE TESLAS ****\n\n");
            foreach (var car in group.GetCars(c => c.Brand == "Tesla"))
            {
                Console.WriteLine(car);
            }
        }
Exemple #2
0
        // GET: CarPark
        public List <CarPark> GetCar()
        {
            List <CarPark> parks      = new List <CarPark>();
            string         conString  = ConfigurationManager.ConnectionStrings["dataConnection"].ConnectionString;
            SqlConnection  connection = new SqlConnection(conString);

            try
            {
                connection.Open();
            }
            catch (Exception ex)
            {
                Response.Write("error" + ex.ToString());
                connection.Close();
                return(null);
            }

            string        cmdString = "SELECT * FROM Car_Park";
            SqlCommand    cmd       = new SqlCommand(cmdString, connection);
            SqlDataReader nwReader1 = cmd.ExecuteReader();

            while (nwReader1.Read())
            {
                CarPark park = new CarPark();
                park.SpaceNumber         = (int)nwReader1["SpaceNumber"];
                park.ArrivalTime         = (string)nwReader1["ArrivalTime"].ToString();
                park.LeavingTime         = (string)nwReader1["LeavingTime"].ToString();
                park.ParkingLotAirportID = (string)nwReader1["ParkingLotAirportID"];
                parks.Add(park);
            }

            return(parks);
        }
Exemple #3
0
        private static void enterCar(CarPark park)
        {
            bool state = true;
            int  i     = 0;

            while (state)
            {
                Console.WriteLine("Введiть марку автомобiля № " + (i + 1));
                var brand = Console.ReadLine();
                Console.WriteLine("Введiть цiну автомобiля № " + (i + 1));
                var priceText = Console.ReadLine();
                int price     = 0;
                if (int.TryParse(priceText, out var res))
                {
                    price = res;
                }
                Console.WriteLine("Виберiть номер типу автомобiля № " + (i + 1) + "\n[1] Crossroad\n[2] Combo\n[3] Leight\n[4] Heavy");
                int id   = int.Parse(Console.ReadLine());
                var type = carTypes.Find(r => r.Id == id);
                park.addCar(brand, price, type);
                Console.WriteLine("Припинити додавання автомобiлiв?\n[1] - Так\n[2] - Нi");
                int choice = int.Parse(Console.ReadLine());
                if (choice != 2)
                {
                    state = false;
                }
                i++;
            }
            Console.WriteLine("Вихiд");
        }
        public void AddPropertyDetails()
        {
            obj.ClickAddNewProperty();

            // Populating the data from Excel
            ExcelLib.PopulateInCollection(Base.ExcelPath, "PropertyDetails");

            PropertyName.SendKeys(ExcelLib.ReadData(2, "PropertyName"));
            SearchAddress.SendKeys(ExcelLib.ReadData(2, "SearchAddress"));
            Description.SendKeys(ExcelLib.ReadData(2, "Description"));
            Number.SendKeys(ExcelLib.ReadData(2, "Number"));
            Street.SendKeys(ExcelLib.ReadData(2, "Street"));
            Suburb.SendKeys(ExcelLib.ReadData(2, "Suburb"));
            City.SendKeys(ExcelLib.ReadData(2, "City"));
            PostCode.SendKeys(ExcelLib.ReadData(2, "PostCode"));
            Region.SendKeys(ExcelLib.ReadData(2, "Region"));
            YearBuilt.SendKeys(ExcelLib.ReadData(2, "YearBuilt"));
            TargetRent.SendKeys(ExcelLib.ReadData(2, "TargetRent"));
            LandArea.SendKeys(ExcelLib.ReadData(2, "LandArea"));
            FloorArea.SendKeys(ExcelLib.ReadData(2, "FloorArea"));
            BedRooms.SendKeys(ExcelLib.ReadData(2, "Bedrooms"));
            BathRooms.SendKeys(ExcelLib.ReadData(2, "Bathrooms"));
            CarPark.SendKeys(ExcelLib.ReadData(2, "Carparks"));
            owneroccupied = ExcelLib.ReadData(2, "Owner Occupied");
            if (owneroccupied == "Yes")
            {
                OwnerOccupied.Click();
            }


            Next.Click();
            AddFinanceDetails();
        }
Exemple #5
0
        private static void enterClients(CarPark park)
        {
            bool state = true;
            int  i     = 0;

            while (state)
            {
                Console.WriteLine("Введiть iм'я клiєнта № " + (i + 1));
                var name = Console.ReadLine();

                Console.WriteLine("Введiть адресу клiєнта № " + (i + 1));
                var addres = Console.ReadLine();

                Console.WriteLine("Виберiть номер телефону клiєнта № " + (i + 1));
                var phone = Console.ReadLine();

                park.registerClient(name, addres, phone);
                Console.WriteLine("Припинити додавання клiєнтiв?\n[1] - Так\n[2] - Нi");
                int choice = int.Parse(Console.ReadLine());
                if (choice != 2)
                {
                    state = false;
                }
                i++;
            }
            Console.WriteLine("Вихiд");
        }
Exemple #6
0
        public string Get(string carpark_id, int slot_id)
        {
            AuthResponse auth     = new AuthResponse();
            CarPark      location = MongoDBHelper.SearchByObjectID <CarPark>(carpark_id);

            //List<Slot> slotDetails = MongoDBHelper.GetEntityList<Slot>();
            Slot slotDetail = MongoDBHelper.SearchByQueryObject <Slot>(Query.EQ("slot_no", slot_id), "Slot");

            //Slot slotDetail = slotDetails.FirstOrDefault(s => s.SlotNumber == slot_id);
            if (location != null && slotDetail != null)
            {
                if (slotDetail.SlotStatus == "Booked")             //If  booked through Mobile App
                {
                    slotDetail.SlotStatus = "Parked";
                    MongoDBHelper.InsertEntity <Slot>(slotDetail);
                }
                else if (slotDetail.SlotStatus == "Empty")          //If Not booked through Mobile App
                {
                    location.aspaces = location.aspaces - 1;
                    MongoDBHelper.InsertEntity <CarPark>(location);

                    slotDetail.SlotStatus = "Parked";
                    MongoDBHelper.InsertEntity <Slot>(slotDetail);
                }
                auth.Status = 0;
                return(JsonConvert.SerializeObject(auth));
            }
            auth.Status = 1;
            return(JsonConvert.SerializeObject(auth));
        }
Exemple #7
0
        private static void Main(string[] args)
        {
            carTypes = new List <CarType>
            {
                new CarType {
                    Id = 1, Name = "Crossroad"
                },
                new CarType {
                    Id = 2, Name = "Combo"
                },
                new CarType {
                    Id = 3, Name = "Leight"
                },
                new CarType {
                    Id = 4, Name = "Heavy"
                },
            };
            CarPark carPark = new CarPark();

            //initializePark(carPark);
            initializeFromConsole(carPark);
            writeToXml(carPark);
            //readFromXml();
            xmlQueries();
        }
Exemple #8
0
        private void CarParkAssert(int[,] carpark, string[] expected)
        {
            var carkPark = new CarPark();

            var actaul = carkPark.Escape(carpark);

            CollectionAssert.AreEqual(expected, actaul);
        }
        private void SaveToFileSortMethodTestHelper <T>(CarPark testCarPark, Action <string, string> action, Func <Vehicle, T> comparer, string fileName, string resFileName)
        {
            testCarPark.SaveToFileSort(fileName, comparer);
            XmlDocument xmlDocument = new XmlDocument();

            xmlDocument.Load(fileName);
            action(fileName, resFileName);
        }
        private void SaveToFileProectionMethodTestHelper <T>(CarPark testCarPark, Action <string, string> action, Func <Vehicle, bool> function, Func <Vehicle, T> condition, string fileName, string resFileName)
        {
            testCarPark.SaveToFileProection(fileName, function, condition);
            XmlDocument xmlDocument = new XmlDocument();

            xmlDocument.Load(fileName);
            action(fileName, resFileName);
        }
        public void SaveToFileMethodPositiveTest(CarPark testCarPark, Action <string, string> assert, string fileName, string resFileName)
        {
            testCarPark.SaveToFile(fileName);
            XmlDocument xmlDocument = new XmlDocument();

            xmlDocument.Load(fileName);
            assert(fileName, resFileName);
        }
 public void Create(CarPark carPark)
 {
     using (var context = new ParqueoContext())
     {
         context.CarParks.Add(carPark);
         context.SaveChanges();
     }
 }
        public void SaveToFileWithConditionMethodTest(CarPark testCarPark, Action <string, string> action, Func <Vehicle, bool> function, string fileName, string resFileName)
        {
            testCarPark.SaveToFileWithCondition(fileName, function);
            XmlDocument xmlDocument = new XmlDocument();

            xmlDocument.Load(fileName);
            action(fileName, resFileName);
        }
        static void Main(string[] args)
        {
            Func <Vehicle, bool>        chooseMoreThan15      = x => x.VehicleEngine.Volume >= 1.5;
            Func <Vehicle, bool>        choose2x2Transmission = x => x.VehicleTransmission.TransmissionType == "2x2";
            Func <Vehicle, string>      transmissionComparer  = x => x.VehicleTransmission.TransmissionType;
            Func <Vehicle, bool>        chooseVehicleType     = x => x.GetType().Equals(typeof(Lorry)) || x.GetType().Equals(typeof(Bus));
            Func <Vehicle, SerialClass> proectionCondition    = x => new SerialClass(x.VehicleEngine.EngineType, x.VehicleEngine.SerialNumber, x.VehicleEngine.Power);

            string fileForVehiclesName = "Vehicles.xml";
            string fileForVehiclesWithEngineVolume15Name = "Vehicles15.xml";
            string fileLorryAndBusEngines              = "LorryAndBusEngines.xml";
            string fileVehiclesWith2x2Transmission     = "2x2VehicleTypes.xml";
            string fileForSortedByTransmissionVehicles = "SortedTransmissions.xml";

            Car auto1 = new Car(ManufacturersForTransmissionsAndVehicles.BMW,
                                new Engine(250, 2.5, EngineTypes.Petrol, 123),
                                new Chassis(4, 4000, 321),
                                new Transmission("2x2", 6, ManufacturersForTransmissionsAndVehicles.BMW),
                                4);
            Car auto2 = new Car(ManufacturersForTransmissionsAndVehicles.Mitsubishi,
                                new Engine(90, 1.1, EngineTypes.Hybrid, 123877),
                                new Chassis(4, 4000, 321),
                                new Transmission("2x2", 5, ManufacturersForTransmissionsAndVehicles.Mitsubishi),
                                4);
            Bus bus1 = new Bus(ManufacturersForTransmissionsAndVehicles.Mercedes,
                               new Engine(385, 6.2, EngineTypes.Diesel, 777),
                               new Chassis(6, 2000, 751),
                               new Transmission("2x4", 7, ManufacturersForTransmissionsAndVehicles.Mercedes),
                               48,
                               2);
            Lorry lorry1 = new Lorry(ManufacturersForTransmissionsAndVehicles.Citroen,
                                     new Engine(350, 5.45, EngineTypes.Diesel, 500500),
                                     new Chassis(4, 1200, 123789),
                                     new Transmission("2x2", 6, ManufacturersForTransmissionsAndVehicles.Kia),
                                     5000);
            Scooter scooter1 = new Scooter(ManufacturersForTransmissionsAndVehicles.Ducati,
                                           new Engine(290, 2.2, EngineTypes.Petrol, 222222),
                                           new Chassis(2, 250, 123784),
                                           new Transmission("1x1", 8, ManufacturersForTransmissionsAndVehicles.Ferrari),
                                           5000);

            List <Vehicle> vehicles = new List <Vehicle>()
            {
                auto1, bus1, lorry1, scooter1, auto2
            };
            CarPark carPark = new CarPark(vehicles);

            Console.Write(carPark.GetInformation());
            carPark.SaveToFile(fileForVehiclesName);
            carPark.SaveToFileWithCondition(fileForVehiclesWithEngineVolume15Name, chooseMoreThan15);
            carPark.SaveToFileProection(fileLorryAndBusEngines, chooseVehicleType, proectionCondition);
            carPark.SaveToFileWithCondition(fileVehiclesWith2x2Transmission, choose2x2Transmission);
            carPark.SaveToFileSort(fileForSortedByTransmissionVehicles, transmissionComparer);
            List <Vehicle>     vehiclesWithEngineVolume15FromFile = carPark.ReadFromFile <Vehicle>(fileForVehiclesWithEngineVolume15Name);
            List <SerialClass> enginesFromFile = carPark.ReadFromFile <SerialClass>(fileLorryAndBusEngines);
            List <Vehicle>     vehiclesChosenByTransmissionFromFile = carPark.ReadFromFile <Vehicle>(fileVehiclesWith2x2Transmission);
            List <Vehicle>     sortedVehiclesByTransmission         = carPark.ReadFromFile <Vehicle>(fileForSortedByTransmissionVehicles);
        }
 public void Delete(CarPark carPark)
 {
     using (var context = new ParqueoContext())
     {
         var carParkDelete = context.CarParks.SingleOrDefault(x => x.Id == carPark.Id);
         context.CarParks.Remove(carParkDelete);
         context.SaveChanges();
     }
 }
Exemple #16
0
        public CarEnumerator(CarPark collection)

        {
            _collection = collection;

            curIndex = -1;

            curCar = default(Car);
        }
Exemple #17
0
        public void GivenAEntersTheCarPark(string vehicleTypeString)
        {
            IVehicle vehicle = CreateVehicle(vehicleTypeString,
                                             DoesNotMatterWeight);

            ScenarioContext.Current [vehicleTypeString] = vehicle;

            CarPark.Enter(vehicle);
        }
Exemple #18
0
    public World()
    {
        spawnedCars           = new List <Car>();
        carsWaitingForParking = new Queue <Car>();

        carPark = new CarPark();

        InitializeCarProtos();
    }
Exemple #19
0
        public void Name_ReturnsName_WhenCalled()
        {
            // Arrange
            // Act
            CarPark sut = CreateSut();

            // Assert
            Assert.AreEqual(m_DefaultName,
                            sut.Name);
        }
Exemple #20
0
        public void GivenAWithAWeightOfKgsEntersTheCarPark(string vehicleTypeString,
                                                           int weightInKilogram)
        {
            IVehicle vehicle = CreateVehicle(vehicleTypeString,
                                             weightInKilogram);

            ScenarioContext.Current [vehicleTypeString] = vehicle;

            CarPark.Enter(vehicle);
        }
Exemple #21
0
        public void NumberOfOccupiedBays_CallBayManager_WhenCalled()
        {
            // Arrange
            m_BayManager.NumberOfOccupiedBays.Returns(1);
            CarPark sut = CreateSut();

            // Act
            // Assert
            Assert.AreEqual(1,
                            sut.NumberOfOccupiedBays);
        }
Exemple #22
0
        public void IsFull_CallBayManager_WhenCalled()
        {
            // Arrange
            m_BayManager.IsFull.Returns(true);
            CarPark sut = CreateSut();

            // Act
            // Assert
            Assert.AreEqual(true,
                            sut.IsFull);
        }
Exemple #23
0
        public void Vehicles_ReturnsVehicles_WhenCalled()
        {
            // Arrange
            m_BayManager.Vehicles.Returns(m_ThreeVehicles);
            CarPark sut = CreateSut();

            // Act
            // Assert
            Assert.AreEqual(m_ThreeVehicles.Length,
                            sut.Vehicles.Count());
        }
Exemple #24
0
    public void ParkCar(ParkingSpace ps)
    {
        controller = Controller.None;
        StopTheCar();
        isParked    = true;
        ps.occupied = true;

        CarPark carPark = WorldController.Instance.world.carPark;

        carPark.ParkCar(this, ps);
    }
Exemple #25
0
        public void Enter_ThrowsException_ForCarParkIsFull()
        {
            // Arrange
            var vehicle = Substitute.For <IVehicle>();

            m_BayManager.IsFull.Returns(true);
            CarPark sut = CreateSut();

            // Act
            // Assert
            Assert.Throws <CarParkIsFullException>(() => sut.Enter(vehicle));
        }
Exemple #26
0
        public void Exit_ThrowsException_Exit_CallBayManager_ForFeeIsNotPaid()
        {
            // Arrange
            var vehicle = Substitute.For <IVehicle>();

            vehicle.IsFeePaid.Returns(false);
            CarPark sut = CreateSut();

            // Act
            // Assert
            Assert.Throws <CarDidNotPayFeeException>(() => sut.Exit(vehicle));
        }
Exemple #27
0
        public void Bays_ReturnsBays_WhenCalled()
        {
            // Arrange
            m_BayManager.Bays.Returns(m_ThreeBays);

            CarPark sut = CreateSut();

            // Act
            // Assert
            Assert.AreEqual(m_ThreeBays,
                            sut.Bays);
        }
Exemple #28
0
        public void Constructor_CallsCreate_WhenCalled()
        {
            // Arrange
            var     factory = Substitute.For <IBaysManagerFactory>();
            CarPark sut     = CreateSut(factory);

            // Act
            sut.Dispose();

            // Assert
            factory.Received().Create(Arg.Any <int>());
        }
 public ActionResult <ICarPark> AddCarpark(CarPark carPark)
 {
     try
     {
         return(Ok(carParkService.AddCarPark(carPark)));
     }
     catch (Exception)
     {
         //   Log Error and Recover
         //throw;
         return(NoContent());
     }
 }
        public void Post([FromBody] Slot value)
        {
            //Update carpark location
            CarPark location = MongoDBHelper.SearchByObjectID <CarPark>(value.car_park_id);

            if (location != null)
            {
                location.aspaces = location.aspaces - 1;
                MongoDBHelper.InsertEntity <CarPark>(location);
            }

            MongoDBHelper.InsertEntity <Slot>(value);
            // JObject json = JObject.Parse(value);
        }