public void GetNextEmptyLot_Returns_Closest_Empty_Lot() { var parkingLotManager = new ParkingLotManager(); parkingLotManager.SetEmptyLots(2); Assert.Equal(1, parkingLotManager.GetNextEmptyLot()); }
public MainPage() { this.InitializeComponent(); ParkingLotManager PLM = new ParkingLotManager(); PLM.RunParkingLot(); }
public void GetNextEmptyLot_Returns_Zero_If_No_Parking_Available() { var parkingLotManager = new ParkingLotManager(); parkingLotManager.SetEmptyLots(1); parkingLotManager.GetNextEmptyLot(); Assert.Equal(0, parkingLotManager.GetNextEmptyLot()); }
public void Handle(string input, ParkingLotManager parkingLotManager) { var tokens = input.Split(' '); if (tokens.Length == 2 && int.TryParse(tokens[1], out var slot)) { parkingLotManager.LeaveParking(slot); Console.WriteLine($"Slot number {slot} is free"); } }
public void Handle(string input, ParkingLotManager parkingLotManager) { var tokens = input.Split(' '); if (tokens.Length == 2) { var slot = parkingLotManager.GetSlotByRegistrationNumber(tokens[1]); Console.WriteLine(slot > 0 ? slot.ToString() : "Not found"); } }
public void Handle(string input, ParkingLotManager parkingLotManager) { var tokens = input.Split(' '); if (tokens.Length == 2 && int.TryParse(tokens[1], out var size)) { parkingLotManager.SetEmptyLots(size); Console.WriteLine($"Created a parking lot with {size} slots"); } }
public void Handle(string input, ParkingLotManager parkingLotManager) { var tokens = input.Split(' '); if (tokens.Length == 2) { var registrationsByColor = parkingLotManager.GetRegistrationNumbersByCarColor(tokens[1]); Console.WriteLine(registrationsByColor.Any() ? string.Join(", ", registrationsByColor) : "Not found"); } }
public void Handle(string input, ParkingLotManager parkingLotManager) { var tokens = input.Split(' '); if (tokens.Length == 2) { var slots = parkingLotManager.GetSlotNumbersOfCarByColor(tokens[1]); Console.WriteLine(slots.Any() ? string.Join(", ", slots) : "Not found"); } }
public void ParkCar_Uses_Empty_Parking_Lot() { var parkingLotManager = new ParkingLotManager(); parkingLotManager.SetEmptyLots(3); parkingLotManager.ParkCar(new Car { RegistrationNumber = "Test-Registration-Number1", Color = "Test-Color1" }, parkingLotManager.GetNextEmptyLot()); Assert.Equal(2, parkingLotManager.GetNextEmptyLot()); }
public void Handle(string input, ParkingLotManager parkingLotManager) { Console.WriteLine("Slot No. Registration No Colour"); var mapping = parkingLotManager.GetCarsBySlotMapping(); foreach (var slot in mapping.Keys.OrderBy(o => o)) { Console.WriteLine("{0}{1}{2}", slot.ToString().PadRight(12), mapping[slot].RegistrationNumber.PadRight(19), mapping[slot].Color); } }
public void SetEmptyLots_Creates_Five_Empty_ParkingLot() { var parkingLotManager = new ParkingLotManager(); parkingLotManager.SetEmptyLots(5); for (var i = 1; i <= 5; i++) { Assert.Equal(i, parkingLotManager.GetNextEmptyLot()); } }
public void LeaveParking_Adjusts_Parking_Lot() { var parkingLotManager = new ParkingLotManager(); parkingLotManager.SetEmptyLots(1); parkingLotManager.GetNextEmptyLot(); Assert.Equal(0, parkingLotManager.GetNextEmptyLot()); parkingLotManager.LeaveParking(1); Assert.Equal(1, parkingLotManager.GetNextEmptyLot()); }
public void GetRegistrationNumbersByCarColor_Returns_Registration_After_Parking_A_Car() { var parkingLotManager = new ParkingLotManager(); parkingLotManager.SetEmptyLots(3); var car = new Car { RegistrationNumber = "Test-Registration-Number", Color = "Test-Color" }; parkingLotManager.ParkCar(car, 1); Assert.Equal(car.RegistrationNumber, parkingLotManager.GetRegistrationNumbersByCarColor("Test-Color").First()); }
public void GetRegistrationNumbersByCarColor_Returns_Empty_Registration_After_Leaving_Parking() { var parkingLotManager = new ParkingLotManager(); parkingLotManager.SetEmptyLots(3); var car1 = new Car { RegistrationNumber = "Test-Registration-Number1", Color = "Test-Color" }; parkingLotManager.ParkCar(car1, 1); parkingLotManager.LeaveParking(1); Assert.Empty(parkingLotManager.GetRegistrationNumbersByCarColor("Test-Color")); }
private void Start() { Instance = this; foreach (Transform child in transform) { GameObject g = child.gameObject; if (g != EmptyParkingSpot) { parkingLots.Add(g); } } if (PhotonNetwork.IsMasterClient) { GenerateNewParkingSpot(); } }
public void ParkCar_Not_Possible_When_Parking_Lots_Are_Full() { var parkingLotManager = new ParkingLotManager(); parkingLotManager.SetEmptyLots(3); parkingLotManager.ParkCar(new Car { RegistrationNumber = "Test-Registration-Number1", Color = "Test-Color1" }, parkingLotManager.GetNextEmptyLot()); parkingLotManager.ParkCar(new Car { RegistrationNumber = "Test-Registration-Number2", Color = "Test-Color2" }, parkingLotManager.GetNextEmptyLot()); parkingLotManager.ParkCar(new Car { RegistrationNumber = "Test-Registration-Number3", Color = "Test-Color3" }, parkingLotManager.GetNextEmptyLot()); Assert.Equal(0, parkingLotManager.GetNextEmptyLot()); }
public void Handle(string input, ParkingLotManager parkingLotManager) { var firstEmptySlot = parkingLotManager.GetNextEmptyLot(); if (firstEmptySlot == 0) { Console.WriteLine("Sorry, parking lot is full"); return; } var tokens = input.Split(' '); if (tokens.Length == 3) { var car = new Car { RegistrationNumber = tokens[1], Color = tokens[2] }; parkingLotManager.ParkCar(car, firstEmptySlot); Console.WriteLine($"Allocated slot number: {firstEmptySlot}"); } }
public void GetNextEmptyLot_Returns_Closest_Empty_Lot_After_Adjusting_Car_Leaving() { var parkingLotManager = new ParkingLotManager(); parkingLotManager.SetEmptyLots(3); parkingLotManager.ParkCar(new Car { RegistrationNumber = "Test-Registration-Number1", Color = "Test-Color1" }, parkingLotManager.GetNextEmptyLot()); parkingLotManager.ParkCar(new Car { RegistrationNumber = "Test-Registration-Number2", Color = "Test-Color2" }, parkingLotManager.GetNextEmptyLot()); parkingLotManager.ParkCar(new Car { RegistrationNumber = "Test-Registration-Number3", Color = "Test-Color3" }, parkingLotManager.GetNextEmptyLot()); parkingLotManager.LeaveParking(2); parkingLotManager.LeaveParking(3); Assert.Equal(2, parkingLotManager.GetNextEmptyLot()); }
public void GetRegistrationNumbersByCarColor_Returns_Registrations_After_Parking_Multiple_Car() { var parkingLotManager = new ParkingLotManager(); parkingLotManager.SetEmptyLots(3); var car1 = new Car { RegistrationNumber = "Test-Registration-Number1", Color = "Test-Color" }; var car2 = new Car { RegistrationNumber = "Test-Registration-Number2", Color = "Test-Color" }; var car3 = new Car { RegistrationNumber = "Test-Registration-Number3", Color = "Test-Color" }; parkingLotManager.ParkCar(car1, 1); parkingLotManager.ParkCar(car2, 1); parkingLotManager.ParkCar(car3, 1); Assert.Equal(new List <string> { car1.RegistrationNumber, car2.RegistrationNumber, car3.RegistrationNumber }, parkingLotManager.GetRegistrationNumbersByCarColor("Test-Color")); }
public ParkingLotService() { ParkingLotManager = new ParkingLotManager(); CommandHandlersFactory = new CommandHandlersFactory(); }