public ActionResult <HostReadDto> CreateHost([FromBody] HostCreateDto hostCreateDto) { Host hostModel = _mapper.Map <Host>(hostCreateDto); hostModel.Apartment.NumberOfTimesReserved = 0; _repo.CreateHost(hostModel); _repo.SaveChanges(); HostReadDto hostReadDto = _mapper.Map <HostReadDto>(hostModel); return(CreatedAtRoute(nameof(GetHostById), new { id = hostReadDto.Id }, hostReadDto)); }
public void GetMostPopularApartments_ShouldReturnHosts() { HostReadDto previousHost = null; ActionResult <IEnumerable <HostReadDto> > actionResult = _controller.GetMostPopularApartments("Israel", "Tel Aviv"); OkObjectResult mostPopularHosts = actionResult.Result as OkObjectResult; Assert.IsTrue(((IEnumerable <HostReadDto>)mostPopularHosts.Value).Count() <= 10); foreach (HostReadDto host in (IEnumerable <HostReadDto>)mostPopularHosts.Value) { Assert.AreEqual("Israel", host.Apartment.Address.Country); Assert.AreEqual("Tel Aviv", host.Apartment.Address.City); if (previousHost == null) { previousHost = host; } else { Assert.IsTrue(host.Apartment.NumberOfTimesReserved >= previousHost.Apartment.NumberOfTimesReserved); previousHost = host; } } }