public void GivenListParkinglotDto_WhenGetAll_ThenReturnOKWithList() { //Given ParkinglotDto parkinglotDto = new ParkinglotDto(); List <ParkinglotDto> listParkinglotDto = new List <ParkinglotDto>() { parkinglotDto }; Parkinglot parkinglot = new Parkinglot(); List <Parkinglot> listParkinglot = new List <Parkinglot>() { parkinglot }; _parkinglotService.GetAll().Returns(listParkinglot); //_parkinglotMapper.ListToDtoList(listParkinglot).Returns(listParkinglotDto); //When OkObjectResult ok = (OkObjectResult)_parkinglotController.GetAllParkinglots().Result; //ActionResult<List<ParkinglotDto>> returnValue = _parkinglotController.GetAllParkinglots(); //then //OkObjectResult returnValue = (OkObjectResult)_parkinglotController.GetAllParkinglots().Result; Assert.Equal(200, ok.StatusCode); Assert.IsType <List <ParkinglotDto> >(ok.Value); }
public void GivenCompletParkinglotDto_WhenCreatingNewParkinglot_ThenReturnStatusCode201WithParkinglotDto() { //Given ParkinglotDto parkinglotDto = new ParkinglotDto(); Parkinglot parkinglot = new Parkinglot(); //_parkinglotMapper.DtoToDomain(parkinglotDto).Returns(parkinglot); _parkinglotService.CreateParkinglot(_parkinglotMapper.DtoToDomain(parkinglotDto)).Returns(parkinglot); //When CreatedResult returnValue = (CreatedResult)_parkinglotController.Createparkinglot(parkinglotDto).Result; //then Assert.Equal(201, returnValue.StatusCode); }
public async Task StartAllocation_WhenStartNewAllocation_ThenReturnStatusCode201WithAllocationGuid() { var server = new TestServer(new WebHostBuilder() .UseStartup <TestStartup>()); using (server) { var client = server .CreateClient(); var context = server.Host.Services.GetService <ParkSharkContext>(); FillingInMemoryDatabase(context); AllocationDto allocationDto = new AllocationDto() { MemberPeronId = 1, ParkinglotId = 1, MemberLicensePlate = new LicensePlate("123", "BE") }; var content = JsonConvert.SerializeObject(allocationDto); var stringContent = new StringContent(content, Encoding.UTF8, "application/json"); var response = await client.PostAsync("api/allocations", stringContent); var allocationGuid = await response.Content.ReadAsStringAsync(); var pl_response = await client.GetAsync("api/parkinglots/1"); var responseString = await pl_response.Content.ReadAsStringAsync(); ParkinglotDto parkinglotDto = JsonConvert.DeserializeObject <ParkinglotDto>(responseString); //context.Dispose(); //context = server.Host.Services.GetService<ParkSharkContext>(); //var pl = context.Parkinglots.FirstOrDefault(p => p.Id == 1); //Assert.Equal(4, pl.Capacity); Assert.Equal(4, parkinglotDto.AvailablePlaces); } }
public void GivenInCompletParkinglotDto_WhenCreatingNewParkinglot_ThenReturnStatusCode400() { //Given ParkinglotDto parkinglotDto = new ParkinglotDto(); Parkinglot parkinglot = new Parkinglot(); _parkinglotMapper.When(fake => fake.DtoToDomain(parkinglotDto)) .Do(call => { throw new EntityNotValidException("Name required", this); }); // is allowed but only if void //_parkinglotMapper.DtoToDomain(parkinglotDto) // .Returns(x => throw new EntityNotValidException("Name required", this)); Action action = () => _parkinglotController.Createparkinglot(parkinglotDto); var exception = Assert.Throws <EntityNotValidException>(action); Assert.Contains("Name required", exception.Message); ////then //Assert.IsType<BadRequestObjectResult>(returnValue); }
public async Task Createparkinglot_WhenCreatingNewParkinglot_ThenReturnStatusCode201WithParkinglotDto() { var server = new TestServer(new WebHostBuilder() .UseStartup <TestStartup>()); using (server) { var client = server .CreateClient(); var context = server.Host.Services.GetService <ParkSharkContext>(); #region fillingInMemoryDatabase Address adress = new Address() { StreetNumber = "1", StreetName = "tt", CityName = "er", PostalCode = "4153", }; context.Persons.Add(new Person( 1, "Person1", "MobilePhone1", "000", adress, "*****@*****.**", new LicensePlate("123", "be") )); context.Set <BuildingType>().Add(new BuildingType() { Id = 1, Name = "Underground" }); context.Divisions.Add(new Division(1, "Division1", "Original1", 1, null)); await context.SaveChangesAsync(); #endregion fillingInMemoryDatabase ParkinglotDto parkinglotDtoToCreate = new ParkinglotDto() { BuildingTypeId = 1, Capacity = 5, AvailablePlaces = 5, ContactPersonId = 1, DivisionId = 1, Name = "Name", PlAddress = new Address() { StreetNumber = "1", StreetName = "tt", CityName = "er", PostalCode = "4153" }, PricePerHour = 10 }; var content = JsonConvert.SerializeObject(parkinglotDtoToCreate); var stringContent = new StringContent(content, Encoding.UTF8, "application/json"); var response = await client.PostAsync("api/parkinglots", stringContent); var responseString = await response.Content.ReadAsStringAsync(); ParkinglotDto parkinglotDtoCreated = JsonConvert.DeserializeObject <ParkinglotDto>(responseString); Assert.True(response.IsSuccessStatusCode); Assert.Equal("Name", parkinglotDtoCreated.Name); } }
public async Task GetOneParkinglot_WhenGetOneParkinglot_ThenReturnParkinglotDto() { var server = new TestServer(new WebHostBuilder() .UseStartup <TestStartup>()); using (server) { var client = server .CreateClient(); var context = server.Host.Services.GetService <ParkSharkContext>(); #region fillingInMemoryDatabase Address adress = new Address() { StreetNumber = "1", StreetName = "tt", CityName = "er", PostalCode = "4153", }; context.Persons.Add(new Person( 1, "Person1", "MobilePhone1", "000", adress, "*****@*****.**", new LicensePlate("123", "be") )); context.Set <BuildingType>().Add(new BuildingType() { Id = 1, Name = "Underground" }); context.Divisions.Add(new Division("test", "original", 0, null)); Parkinglot parkinglot = new Parkinglot() { BuildingTypeId = 1, Capacity = 5, AvailablePlaces = 5, ContactPersonId = 1, DivisionId = 1, Name = "Name", Id = 1, PlAddress = new Address() { StreetNumber = "1", StreetName = "tt", CityName = "er", PostalCode = "4153" }, PricePerHour = 10 }; context.Add(parkinglot); await context.SaveChangesAsync(); #endregion fillingInMemoryDatabase var response = await client.GetAsync("api/parkinglots/1"); var responseString = await response.Content.ReadAsStringAsync(); ParkinglotDto parkinglotDto = JsonConvert.DeserializeObject <ParkinglotDto>(responseString); Assert.True(response.IsSuccessStatusCode); Assert.IsType <ParkinglotDto>(parkinglotDto); } }