public void ChangeHotelPriceShouldThrowExceptionWithInvalidHotel()
        {
            Mock <DbSet <Hotel> > mockSet;
            Mock <DbSet <Town> >  mockSetTowns;

            SeedDataBase(out mockSet, out mockSetTowns);

            var mockContext = new Mock <TravelSimulatorContext>();

            mockContext.Setup(c => c.Hotels).Returns(mockSet.Object);
            mockContext.Setup(m => m.Towns).Returns(mockSetTowns.Object);

            var service = new HotelService(mockContext.Object);

            Assert.Throws <InvalidOperationException>(() => service.ChangeHotelPrice("Bulgaria", "Sunny Beach", "Hilton", 50));
        }
        public void ChangeHotelPriceShouldChangePrice()
        {
            Mock <DbSet <Hotel> > mockSet;
            Mock <DbSet <Town> >  mockSetTowns;

            SeedDataBase(out mockSet, out mockSetTowns);

            var mockContext = new Mock <TravelSimulatorContext>();

            mockContext.Setup(c => c.Hotels).Returns(mockSet.Object);
            mockContext.Setup(m => m.Towns).Returns(mockSetTowns.Object);

            var service       = new HotelService(mockContext.Object);
            var newHotelPrice = service.ChangeHotelPrice("Bulgaria", "Sunny Beach", "Jasmine", 50);

            int updatedPriceExpectedResult = 50;

            Assert.AreEqual(updatedPriceExpectedResult, newHotelPrice);
        }