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); } }
// 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); }
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(); }
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д"); }
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)); }
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(); }
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(); } }
public CarEnumerator(CarPark collection) { _collection = collection; curIndex = -1; curCar = default(Car); }
public void GivenAEntersTheCarPark(string vehicleTypeString) { IVehicle vehicle = CreateVehicle(vehicleTypeString, DoesNotMatterWeight); ScenarioContext.Current [vehicleTypeString] = vehicle; CarPark.Enter(vehicle); }
public World() { spawnedCars = new List <Car>(); carsWaitingForParking = new Queue <Car>(); carPark = new CarPark(); InitializeCarProtos(); }
public void Name_ReturnsName_WhenCalled() { // Arrange // Act CarPark sut = CreateSut(); // Assert Assert.AreEqual(m_DefaultName, sut.Name); }
public void GivenAWithAWeightOfKgsEntersTheCarPark(string vehicleTypeString, int weightInKilogram) { IVehicle vehicle = CreateVehicle(vehicleTypeString, weightInKilogram); ScenarioContext.Current [vehicleTypeString] = vehicle; CarPark.Enter(vehicle); }
public void NumberOfOccupiedBays_CallBayManager_WhenCalled() { // Arrange m_BayManager.NumberOfOccupiedBays.Returns(1); CarPark sut = CreateSut(); // Act // Assert Assert.AreEqual(1, sut.NumberOfOccupiedBays); }
public void IsFull_CallBayManager_WhenCalled() { // Arrange m_BayManager.IsFull.Returns(true); CarPark sut = CreateSut(); // Act // Assert Assert.AreEqual(true, sut.IsFull); }
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()); }
public void ParkCar(ParkingSpace ps) { controller = Controller.None; StopTheCar(); isParked = true; ps.occupied = true; CarPark carPark = WorldController.Instance.world.carPark; carPark.ParkCar(this, ps); }
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)); }
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)); }
public void Bays_ReturnsBays_WhenCalled() { // Arrange m_BayManager.Bays.Returns(m_ThreeBays); CarPark sut = CreateSut(); // Act // Assert Assert.AreEqual(m_ThreeBays, sut.Bays); }
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); }