public void UserScenario_1() { ParkingMap parkingMap = new ParkingMap(PopulateMap()); // Space is 4 Normal and 2 Disabled Cars // Assert.AreNotEqual(-1, parkingMap.RequestParking(new NormalCar(12300))); Assert.AreNotEqual(-1, parkingMap.RequestParking(new DisabledCar(12301))); Assert.AreNotEqual(-1, parkingMap.RequestParking(new NormalCar(12302))); Assert.AreNotEqual(-1, parkingMap.RequestParking(new NormalCar(12303))); Assert.AreNotEqual(-1, parkingMap.RequestParking(new DisabledCar(12304))); Assert.AreNotEqual(-1, parkingMap.RequestParking(new NormalCar(12305))); // These will fail but they will be pushed to queue // Assert.AreEqual(-1, parkingMap.RequestParking(new DisabledCar(12306))); Assert.AreEqual(-1, parkingMap.RequestParking(new NormalCar(12307))); // Release 1 Normal and 1 Disabled // Assert.IsTrue(parkingMap.ReleaseParkingByCarId(12300)); Assert.IsTrue(parkingMap.ReleaseParkingByCarId(12301)); // Release unknowns // Assert.IsFalse(parkingMap.ReleaseParkingByCarId(12300)); Assert.IsFalse(parkingMap.ReleaseParkingByCarId(12301)); // Release all // Assert.IsTrue(parkingMap.ReleaseParkingByCarId(12302)); Assert.IsTrue(parkingMap.ReleaseParkingByCarId(12303)); Assert.IsTrue(parkingMap.ReleaseParkingByCarId(12304)); Assert.IsTrue(parkingMap.ReleaseParkingByCarId(12305)); Assert.IsTrue(parkingMap.ReleaseParkingByCarId(12306)); Assert.IsTrue(parkingMap.ReleaseParkingByCarId(12307)); // Release unknowns // Assert.IsFalse(parkingMap.ReleaseParkingByCarId(12302)); Assert.IsFalse(parkingMap.ReleaseParkingByCarId(12303)); Assert.IsFalse(parkingMap.ReleaseParkingByCarId(12304)); Assert.IsFalse(parkingMap.ReleaseParkingByCarId(12305)); Assert.IsFalse(parkingMap.ReleaseParkingByCarId(12306)); Assert.IsFalse(parkingMap.ReleaseParkingByCarId(12307)); // Request more // Assert.AreNotEqual(-1, parkingMap.RequestParking(new DisabledCar(12310))); Assert.AreNotEqual(-1, parkingMap.RequestParking(new NormalCar(12311))); Assert.AreEqual(-1, parkingMap.RequestParking(new DisabledCar(12310))); Assert.AreEqual(-1, parkingMap.RequestParking(new NormalCar(12311))); Assert.IsTrue(parkingMap.ReleaseParkingByCarId(12310)); Assert.IsTrue(parkingMap.ReleaseParkingByCarId(12311)); Assert.IsFalse(parkingMap.ReleaseParkingByCarId(12310)); Assert.IsFalse(parkingMap.ReleaseParkingByCarId(12311)); }
/// <summary> /// Initialize the ParkingInstance. /// </summary> public static void initialize (IConfiguration configuration) { parkings = new ParkingMap (); string json = File.ReadAllText (configuration.GetSection("Paths").GetValue<string>("BicycleParkingsFile")); FeatureCollection raw = JsonConvert.DeserializeObject<FeatureCollection> (json); foreach (Feature f in raw.Features) { string type = f.Properties["type_nl"].ToString (); if (type == "Gegroepeerde bogen" || type == "Geïsoleerde boog") { parkings.Add (f); } } }
//*******CODE TO RUN WHEN THE CLEAR BUTTON IS TOUCHED******* partial void ClearButton_TouchUpInside(UIButton sender) { if (ParkingMap.Overlays != null) { ParkingMap.RemoveOverlays(ParkingMap.Overlays); } if (ParkingMap.Annotations != null) { ParkingMap.RemoveAnnotations(ParkingMap.Annotations); } ParkCarButton.Hidden = false; FindCarButton.Hidden = true; ClearButton.Hidden = true; cTime.ResetTimer(); ParkingMap.ShowsUserLocation = true; }
//CODE FOR GETTING DIRECTIONS public void getDirections(CLLocationCoordinate2D source, CLLocationCoordinate2D destination) { // var gg = new CLLocationCoordinate2D(37.8197, -122.4786); // var sfo = new CLLocationCoordinate2D(37.6189, -122.3750); var ggAnnotation = new MKPointAnnotation() { Title = "Starting Point", Coordinate = source }; var sfoAnnotation = new MKPointAnnotation() { Title = "My Car", Coordinate = destination }; ParkingMap.ShowAnnotations(new MKPointAnnotation[] { ggAnnotation, sfoAnnotation }, false); var emptyDict = new NSDictionary(); var req = new MKDirectionsRequest() { Source = new MKMapItem(new MKPlacemark(source, emptyDict)), Destination = new MKMapItem(new MKPlacemark(destination, emptyDict)), TransportType = MKDirectionsTransportType.Automobile }; var dir = new MKDirections(req); dir.CalculateDirections((response, error) => { if (error == null) { var route = response.Routes[0]; var rteLine = new MKPolylineRenderer(route.Polyline) { LineWidth = 5.0f, StrokeColor = UIColor.Purple }; ParkingMap.OverlayRenderer = (mv, ol) => rteLine; ParkingMap.AddOverlay(route.Polyline, MKOverlayLevel.AboveRoads); } else { Console.WriteLine(error); } }); }
public void ReleaseParkingByCarIdTest() { ParkingMap parkingMap = new ParkingMap(PopulateMap()); Assert.IsFalse(parkingMap.ReleaseParkingByCarId(999999)); }