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));
        }
Esempio n. 2
0
        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;
                }
            }
        }