public void InsertMultipleVehicleValidOperation_ShouldReturnCorrectResult() { // Arrange IVehiclePark park = new VehiclePark(2, 3); IVehicle car1 = new Car("CA1234CA", "Pesho", 3); IVehicle car2 = new Car("CA1235CA", "Pesho", 3); IVehicle car3 = new Car("CA1236CA", "Pesho", 3); IVehicle car4 = new Car("CA1237CA", "Pesho", 3); IVehicle car5 = new Car("CA1238CA", "Pesho", 3); IVehicle car6 = new Car("CA1239CA", "Pesho", 3); StringBuilder result = new StringBuilder(); StringBuilder expected = new StringBuilder(); // Act result.AppendLine(park.InsertVehicle(car1, 1, 1, new DateTime(2015, 10, 17, 10, 30, 0))); result.AppendLine(park.InsertVehicle(car2, 1, 2, new DateTime(2015, 10, 17, 10, 30, 0))); result.AppendLine(park.InsertVehicle(car3, 1, 3, new DateTime(2015, 10, 17, 10, 30, 0))); result.AppendLine(park.InsertVehicle(car4, 2, 1, new DateTime(2015, 10, 17, 10, 30, 0))); result.AppendLine(park.InsertVehicle(car5, 2, 2, new DateTime(2015, 10, 17, 10, 30, 0))); result.AppendLine(park.InsertVehicle(car6, 2, 3, new DateTime(2015, 10, 17, 10, 30, 0))); expected.AppendLine(string.Format(GlobalMessages.VehicleParked, car1.GetType().Name, "(1,1)")); expected.AppendLine(string.Format(GlobalMessages.VehicleParked, car1.GetType().Name, "(1,2)")); expected.AppendLine(string.Format(GlobalMessages.VehicleParked, car1.GetType().Name, "(1,3)")); expected.AppendLine(string.Format(GlobalMessages.VehicleParked, car1.GetType().Name, "(2,1)")); expected.AppendLine(string.Format(GlobalMessages.VehicleParked, car1.GetType().Name, "(2,2)")); expected.AppendLine(string.Format(GlobalMessages.VehicleParked, car1.GetType().Name, "(2,3)")); // Assert Assert.AreEqual(expected.ToString(), result.ToString()); }
public void VehicleExitNonPresentLicensePlate_ShouldThrowExceptionWithCorrectResult() { // Arrange IVehiclePark park = new VehiclePark(2, 2); string licensePlate = "CA1234CA"; IVehicle car = new Car(licensePlate, "Pesho", 3); int sector = 1; int place = 1; // Act park.InsertVehicle(car, sector, place, new DateTime(2015, 10, 17, 10, 30, 0)); string result = string.Empty; try { park.ExitVehicle("CA1234CB", new DateTime(2015, 10, 17, 13, 30, 0), 6M); } catch (Exception ex) { result = ex.Message; } string expected = string.Format(GlobalMessages.VehicleNotPresent, "CA1234CB"); // Assert Assert.AreEqual(expected, result); }
public string Execute(ICommand command) { if (command.Name != "SetupPark" && this.VehiclePark == null) { return "The vehicle park has not been set up"; } switch (command.Name) { case "SetupPark": int sectors = int.Parse(command.Parameters["sectors"]); int placesPerSector = int.Parse(command.Parameters["placesPerSector"]); this.VehiclePark = new VehiclePark(sectors, placesPerSector); return "Vehicle park created"; case "Park": IVehicle vehicle = null; string licensePlate = command.Parameters["licensePlate"]; string owner = command.Parameters["owner"]; int reservedHours = int.Parse(command.Parameters["hours"]); int sector = int.Parse(command.Parameters["sector"]); int placeInSector = int.Parse(command.Parameters["place"]); DateTime timeOfEntry = DateTime.Parse(command.Parameters["time"], null, System.Globalization.DateTimeStyles.RoundtripKind); switch (command.Parameters["type"]) { case "car": vehicle = new Car(licensePlate, owner, reservedHours); break; case "motorbike": vehicle = new Motorbike(licensePlate, owner, reservedHours); break; case "truck": vehicle = new Truck(licensePlate, owner, reservedHours); break; } string result = this.VehiclePark.InsertVehicle(vehicle, sector, placeInSector, timeOfEntry); return result; case "Exit": string licensePlateExit = command.Parameters["licensePlate"]; DateTime timeOfEntryExit = DateTime.Parse(command.Parameters["time"], null, System.Globalization.DateTimeStyles.RoundtripKind); decimal amountPaid = decimal.Parse(command.Parameters["paid"]); // BUG: parameter name is "paid", not "money" string exitResult = this.VehiclePark.ExitVehicle(licensePlateExit, timeOfEntryExit, amountPaid); return exitResult; case "Status": return this.VehiclePark.GetStatus(); case "FindVehicle": return this.VehiclePark.FindVehicle(command.Parameters["licensePlate"]); case "VehiclesByOwner": return this.VehiclePark.FindVehiclesByOwner(command.Parameters["owner"]); default: throw new InvalidOperationException("Invalid command."); } }
public void Remove(Car car) { if (car == null) { throw new ArgumentException("Null car cannot be removed"); } this.Data.Cars.Remove(car); }
public void Add(Car car) { if (car == null) { throw new ArgumentException("Null car cannot be added"); } this.Data.Cars.Add(car); }
private static void ModifyCarNumber(Car addedCar) { addedCar.Number = addedCar.Number + "upadated" + DateTime.Now.Ticks; var request = new RestRequest(addedCar.Id.ToString()); request.AddJsonBody(addedCar); Client.Put(request); }
public void AddingCarShouldReturnADetail() { var car = new Car { Id = 15, Make = "BMW", Model = "330d", Year = 2014 }; var model = (Car)GetModel(() => this.controller.Add(car)); Assert.AreEqual(4, model.Id); Assert.AreEqual("Opel", model.Make); Assert.AreEqual("Astra", model.Model); Assert.AreEqual(2010, model.Year); }
public void GetStatusOneVehicle_ShouldReturnCorrectResult() { // Arrange int totalSectors = 2; IVehiclePark park = new VehiclePark(totalSectors, 2); IVehicle car = new Car("CA1234CA", "Pesho", 3); // Act park.InsertVehicle(car, 1, 1, new DateTime(2015, 10, 17, 10, 30, 0)); string result = park.GetStatus(); string expected = "Sector 1: 1 / 2 (50% full)\r\nSector 2: 0 / 2 (0% full)"; // Assert Assert.AreEqual(expected, result); }
public IView Add(Car car) { if (car == null) { throw new ArgumentNullException("Car cannot be null"); } if (string.IsNullOrEmpty(car.Make) || string.IsNullOrEmpty(car.Model)) { throw new ArgumentNullException("Car make and model cannot be empty"); } this.carsData.Add(car); return this.Details(car.Id); }
public void GetStatusFullSingleSector_ShouldReturnCorrectResult() { // Arrange IVehiclePark park = new VehiclePark(2, 2); IVehicle car3 = new Car("CA1236CA", "Pesho", 3); IVehicle car4 = new Car("CA1237CA", "Pesho", 3); // Act park.InsertVehicle(car3, 2, 1, new DateTime(2015, 10, 17, 10, 30, 0)); park.InsertVehicle(car4, 2, 2, new DateTime(2015, 10, 17, 10, 30, 0)); string result = park.GetStatus(); string expected = "Sector 1: 0 / 2 (0% full)\r\nSector 2: 2 / 2 (100% full)"; // Assert Assert.AreEqual(expected, result); }
public void VehicleExitExactlyOnTime_ShouldReturnCorrectResult() { // Arrange IVehiclePark park = new VehiclePark(2, 2); string licensePlate = "CA1234CA"; IVehicle car = new Car(licensePlate, "Pesho", 3); int sector = 1; int place = 1; // Act park.InsertVehicle(car, sector, place, new DateTime(2015, 10, 17, 10, 30, 0)); string result = park.ExitVehicle(licensePlate, new DateTime(2015, 10, 17, 13, 30, 0), 6M); string expected = "********************\r\nCar [CA1234CA], owned by Pesho\nat place (1,1)\nRate: $6,00\nOvertime rate: $0,00\r\n--------------------\r\nTotal: $6,00\nPaid: $6,00\nChange: $0,00\r\n********************"; // Assert Assert.AreEqual(expected, result); }
private void CheckEquality(Car orig, Car newCar) { Assert.IsTrue(newCar.Guid.Equals(orig.Guid)); Assert.IsTrue(newCar.Owner.Equals(orig.Owner)); Assert.IsTrue(newCar.Factory.Equals(orig.Factory)); bool equal = false; Assert.IsTrue(newCar.Type.Equals(orig.Type)); Assert.IsNotNull(orig.Friends); equal = Enumerable.SequenceEqual(orig.Friends, newCar.Friends); Assert.IsTrue(equal); Assert.IsNotNull(orig.Maintainers); equal = Enumerable.SequenceEqual(orig.Maintainers, newCar.Maintainers); Assert.IsTrue(equal); }
public static Car CreateCar() { Car aCar = new Car() { Owner = new Person() { Id = 1, Name = "Maya", }, Factory = new Factory() { Name = "Garena", }, }; Random r = new Random(); List<Person> friendList = new List<Person>(); for (int i = 0; i < _kFriendCount; ++i) { int idx = r.Next(_name_map.Count()); friendList.Add(new Person { Id = i+1, Name = _name_map[idx], }); } aCar.Friends = friendList.ToArray(); List<Factory> maintainerList = new List<Factory>(); for (int i = 0; i < _kMaintainerCount; ++i) { int idx = r.Next(_name_map.Count()); maintainerList.Add(new Factory { Guid = System.Guid.NewGuid(), Name = _name_map[idx] + "'s Factory.", }); } aCar.Maintainers = maintainerList; return aCar; }
public void InsertVehicleAtNegativeSector_ShouldThrowExceptionWithCorrectMessage() { // Arrange IVehiclePark park = new VehiclePark(2, 2); IVehicle car = new Car("CA1234CA", "Pesho", 3); int sector = -1; int place = 1; string result = string.Empty; string expected = string.Format(GlobalMessages.NoSuchSector, sector); // Act try { park.InsertVehicle(car, sector, place, new DateTime(2015, 10, 17, 10, 30, 0)); } catch (Exception ex) { result = ex.Message; } // Assert Assert.AreEqual(expected, result); }
public void InsertVehicleWithExistingLicensePlate_ShouldThrowExceptionWithCorrectMessage() { // Arrange IVehiclePark park = new VehiclePark(2, 2); IVehicle car = new Car("CA1234CA", "Pesho", 3); int sector = 1; int place = 1; string result = string.Empty; string expected = string.Format(GlobalMessages.VehicleAlreadyParked, "CA1234CA"); // Act park.InsertVehicle(car, sector, place, new DateTime(2015, 10, 17, 10, 30, 0)); try { park.InsertVehicle(car, sector + 1, place + 1, new DateTime(2015, 10, 17, 10, 30, 0)); } catch (Exception ex) { result = ex.Message; } // Assert Assert.AreEqual(expected, result); }
public void Create(Models.Car t) { }
public void InsertVehicleValidOperation_ShouldReturnCorrectResult() { // Arrange IVehiclePark park = new VehiclePark(2, 2); IVehicle car = new Car("CA1234CA", "Pesho", 3); int sector = 1; int place = 1; // Act string result = park.InsertVehicle(car, sector, place, new DateTime(2015, 10, 17, 10, 30, 0)); string parkPlace = string.Format("({0},{1})", sector, place); string expected = string.Format(GlobalMessages.VehicleParked, car.GetType().Name, parkPlace); // Assert Assert.AreEqual(expected, result); }
public void InsertVehicleAtOccupiedSpace_ShouldThrowExceptionWithCorrectMessage() { // Arrange IVehiclePark park = new VehiclePark(2, 2); IVehicle car1 = new Car("CA1234CA", "Pesho", 3); IVehicle car2 = new Car("CA1235CA", "Pesho", 3); int sector = 1; int place = 1; string parkPlace = string.Format("({0},{1})", sector, place); string expected = string.Format(GlobalMessages.PlaceIsOccupied, parkPlace); // Act park.InsertVehicle(car1, sector, place, new DateTime(2015, 10, 17, 10, 30, 0)); string result = string.Empty; try { park.InsertVehicle(car2, sector, place, new DateTime(2015, 10, 17, 10, 30, 0)); } catch (Exception ex) { result = ex.Message; } // Assert Assert.AreEqual(expected, result); }
public void AddingCarShouldThrowArgumentNullExceptionIfCarModelIsNull() { var car = new Car { Id = 15, Make = "BMW", Model = null, Year = 2014 }; var model = (Car)GetModel(() => this.controller.Add(car)); }
public void AddingCarShouldThrowArgumentNullExceptionIfCarMakeIsEmptyString() { var car = new Car { Id = 15, Make = string.Empty, Model = "330d", Year = 2014 }; var model = (Car)GetModel(() => this.controller.Add(car)); }
private static void PrintCar(Car car) { Console.WriteLine($"id: {car.Id}, Model: {car.Model}, Number: {car.Number}"); }
public string Execute(ICommand command) { if (command.Name != "SetupPark" && this.vehiclePark == null) { return Message.VehicleParkNotSetUp; } var message = string.Empty; switch (command.Name) { case "SetupPark": this.vehiclePark = new VehiclePark( int.Parse(command.Parameters["sectors"]), int.Parse(command.Parameters["placesPerSector"])); message = Message.VehicleParkCreated; break; case "Park": var licensePlate = command.Parameters["licensePlate"]; var owner = command.Parameters["owner"]; var reservedHours = int.Parse(command.Parameters["hours"]); var place = int.Parse(command.Parameters["place"]); var sector = int.Parse(command.Parameters["sector"]); var time = DateTime.Parse(command.Parameters["time"]); switch (command.Parameters["type"]) { case "car": var car = new Car(licensePlate, owner, reservedHours); message = this.vehiclePark.InsertCar(car, sector, place, time); break; case "motorbike": var bike = new Motorbike(licensePlate, owner, reservedHours); message = this.vehiclePark.InsertMotorbike(bike, sector, place, time); break; case "truck": var truck = new Truck(licensePlate, owner, reservedHours); message = this.vehiclePark.InsertTruck(truck, sector, place, time); break; } break; case "Exit": var exitLicesencePlate = command.Parameters["licensePlate"]; var exitTime = DateTime.Parse(command.Parameters["time"]); var moneyOwed = decimal.Parse(command.Parameters["paid"]); message = this.vehiclePark.ExitVehicle( exitLicesencePlate, exitTime, moneyOwed); break; case "Status": message = this.vehiclePark.GetStatus(); break; case "FindVehicle": message = this.vehiclePark.FindVehicle(command.Parameters["licensePlate"]); break; case "VehiclesByOwner": message = this.vehiclePark.FindVehiclesByOwner(command.Parameters["owner"]); break; default: throw new InvalidOperationException("Invalid command"); } return message; }
protected override void LoadContent() { spriteBatch = new SpriteBatch(GraphicsDevice); // La inn en spritefont i content-prosjektet for å // tegne tekst. Denne vises her. spritefont = Content.Load<SpriteFont>("Arial"); // Opprett egendefinerte spillobjekter car = new Car(Content, "buggy"); track = new Track(device, Content); obstacle = new Obstacle(device, Content); terrain = new Terrain(device, Content); skybox = new Skybox(device, Content, "miramar"); }
public string InsertCar(Car car, int sector, int place, DateTime time) { var message = this.InsertVehicle(car, sector, place, time); return message; }
public override string ToString() { return((ReturnTime != default(DateTime) ? "[RETURNED]" : "[ACTIVE]") + $" {CustomerInfo.FirstName} {CustomerInfo.LastName} " + $"{StartTime}-{EndTime} {Car.ToString()}"); }