public void AddCar_CorrectValue_ShouldReturnSucces()
        {
            //Arrange
            ParkingOperations operations = new ParkingOperations();
            string            carNumber  = "B24FGT";
            string            key        = "56";
            //Act
            var result = operations.AddCar(carNumber, key);

            //Assert
            Assert.AreEqual(result, Warnings.Succes);
        }
        public void AddCar_NullValue_ShouldReturnWarning()
        {
            //Arrange
            ParkingOperations operations = new ParkingOperations();
            string            carNumber  = null;
            string            key        = "56";

            //Act
            operations.AddCar(carNumber, key);
            var result = operations.AddCar(carNumber, key);

            //Assert
            Assert.AreEqual(result, Warnings.Null);
        }
        public void AddCar_DuplicateCar_ShouldReturnWarning()
        {
            //Arrange
            ParkingOperations operations = new ParkingOperations();
            string            carNumber  = "B24FGT";
            string            key        = "56";

            //Act
            operations.AddCar(carNumber, key);
            var result = operations.AddCar(carNumber, key);

            //Assert
            Assert.AreEqual(result, Warnings.Duplicate);
        }
        public void RemoveCar_CorrectKey_ShouldReturnSucces()
        {
            //Arrange
            ParkingOperations operations  = new ParkingOperations();
            string            carNumber   = "B24FGT";
            string            key         = "56";
            DateTime          arrivalTime = DateTime.Now.Subtract(new TimeSpan(1, 2, 34));

            //Act
            operations.AddCar(carNumber, key);
            var result = operations.RemoveCar(carNumber, key, ref arrivalTime);

            //Assert
            Assert.AreEqual(result, Warnings.Succes);
        }
        public void RemoveCar_NullValue_ShouldReturnWarning()
        {
            //Arrange
            ParkingOperations operations  = new ParkingOperations();
            string            carNumber   = null;
            string            key         = "56";
            DateTime          arrivalTime = DateTime.Now.Subtract(new TimeSpan(1, 2, 34));

            //Act
            operations.RemoveCar(carNumber, key, ref arrivalTime);
            var result = operations.AddCar(carNumber, key);

            //Assert
            Assert.AreEqual(result, Warnings.Null);
        }
        public void AddCar_CapacityReached_ShouldReturnWarning()
        {
            //Arrange
            ParkingOperations operations = new ParkingOperations();
            string            carNumber  = "B24FGT";
            string            key        = "56";

            operations.Capacity = 4;
            for (int i = 0; i < operations.Capacity; i++)
            {
                operations.AddCar(String.Concat(i, carNumber), String.Concat(i, key));
            }

            //Act
            operations.AddCar(carNumber, key);
            var result = operations.AddCar(carNumber, key);

            //Assert
            Assert.AreEqual(result, Warnings.FullParking);
        }