public async Task CreateAsync_ShouldSuccessfullyAddToDatabase()
        {
            // Arrange
            var context         = ApplicationDbContextInMemoryFactory.InitializeContext();
            var hotelRepository = new EfDeletableEntityRepository <Hotel>(context);

            var service    = new HotelsService(hotelRepository);
            var inputModel = new HotelInputModel();

            inputModel.Name                   = "HotelName";
            inputModel.ImageUrl               = "ImageUrl";
            inputModel.Description            = "Description";
            inputModel.Address                = "Adress";
            inputModel.DestinationId          = 1;
            inputModel.PricePerNightPerPerson = 0;
            inputModel.Stars                  = 1;
            inputModel.AvailableRooms         = 1;
            inputModel.FeedingType            = FeedingType.Breakfast;
            inputModel.ReservationType        = ReservationType.Hotel;

            var expectedResult = 1;

            // Act
            await service.CreateAsync(inputModel);

            var actualResult = hotelRepository.All().Count();

            // Assert
            Assert.True(expectedResult == actualResult);
        }
Пример #2
0
        public async Task TestCreateHotel()
        {
            var hotels        = new List <Hotel>();
            var mockHotelRepo = new Mock <IDeletableEntityRepository <Hotel> >();

            mockHotelRepo.Setup(x => x.All()).Returns(hotels.AsQueryable());
            mockHotelRepo.Setup(x => x.AddAsync(It.IsAny <Hotel>())).Callback(
                (Hotel hotel) => hotels.Add(hotel));

            var service = new HotelsService(mockHotelRepo.Object);

            await service.CreateAsync("Test Name", 1, "Test Address", 1, 2, null);

            Assert.Single(hotels);
        }