Exemplo n.º 1
0
        public void DecreaseCell_WithoutAvaliableCells_ShouldReturnAnException()
        {
            var vehicleType = VehicleTypeEnum.car;
            var listCells   = new List <CellEntity> {
                new CellEntity {
                    Id               = Guid.NewGuid().ToString(),
                    IdVehicleType    = vehicleType,
                    NumCellAvaliable = 0,
                    NumTotalCells    = 4
                }
            };
            var cellExceptionMessage = "No hay más celdas disponibles";

            _cellRepository.Setup(cs => cs.List(cell => cell.IdVehicleType == vehicleType)).Returns(listCells);

            var cellService = new CellService(_cellRepository.Object);

            try
            {
                cellService.DecreaseCell(vehicleType, 1);
            }
            catch (Exception e)
            {
                Assert.AreEqual(e.Message, cellExceptionMessage);
                throw;
            }
        }
        public void DepartureOfCar_With1DayAnd3Hours_ShouldReturnAValueToPayOf11000()
        {
            // Arrange
            var          idVehicle       = "SFL555";
            DtoDeparture entryDTOBuilder = new DepartureDTOBuilder().WithIdVehicle(idVehicle).Build();
            var          valueToPay      = 11000;

            entryRepository.Add(new EntryEntity()
            {
                EntryTime     = DateTime.Now.Subtract(TimeSpan.FromHours(27).Subtract(TimeSpan.FromSeconds(5))),
                IdVehicle     = idVehicle,
                IdVehicleType = AppCore.Enums.VehicleTypeEnum.car,
                Id            = Guid.NewGuid().ToString()
            });

            // Act
            cellService.DecreaseCell(AppCore.Enums.VehicleTypeEnum.car, 1);
            var response = departureService.RegistryDeparture(entryDTOBuilder);

            // Assert
            Assert.AreEqual(response.RateValue, valueToPay);
        }
        public void EntryVehicle_WithoutCellAvaliable_ShouldReturnAnException()
        {
            // Arrange
            DtoEntry entryDTOBuilder = new EntryDTOBuilder().WithVehicleType(AppCore.Enums.VehicleTypeEnum.car).WithVehicleId("AAA111").Build();
            var      response        = "No hay cupos disponibles";


            cellService.DecreaseCell(VehicleTypeEnum.car, 20);
            // Act
            try
            {
                entryService.RegistryVehicle(entryDTOBuilder);
            }
            catch (Exception e)
            {
                // Assert
                Assert.AreEqual(e.Message, response);
                throw;
            }
        }
Exemplo n.º 4
0
        public void DecreaseCell_Should_Return_NumCellAvaliable_To3()
        {
            var vehicleType = VehicleTypeEnum.car;
            var listCells   = new List <CellEntity> {
                new CellEntity {
                    Id               = Guid.NewGuid().ToString(),
                    IdVehicleType    = vehicleType,
                    NumCellAvaliable = 4,
                    NumTotalCells    = 4
                }
            };

            _cellRepository.Setup(cs => cs.List(cell => cell.IdVehicleType == vehicleType)).Returns(listCells);

            var cellService = new CellService(_cellRepository.Object);


            var response = cellService.DecreaseCell(vehicleType, 1);

            Assert.IsTrue(response.NumCellAvaliable == 3);
        }