public void TestingFinderFunctionality()
        {
            var roomFinder = new RoomFinder(new SqlRoomRepository());
            var rooms      = roomFinder.SearchAvailableRooms(2, DateTime.Now, DateTime.Now);

            Assert.Equal(2, rooms.Count);
            Assert.Throws <InvalidOperationException>(() => roomFinder.SearchAvailableRooms(-1, DateTime.Now, DateTime.Now));
            Assert.True(rooms.All(room => room.Price > 0));
            Assert.Throws <InvalidOperationException>(() => roomFinder.SearchAvailableRooms(2, DateTime.Now.AddDays(-1), DateTime.Now));
            Assert.Throws <InvalidOperationException>(() => roomFinder.SearchAvailableRooms(2, DateTime.Now.AddDays(-1), DateTime.Now.AddDays(-1)));
            Assert.Throws <InvalidOperationException>(() => roomFinder.SearchAvailableRooms(2, DateTime.Now.AddDays(5), DateTime.Now.AddDays(0)));
        }
        public void ShouldReturnedRoomsHaveAPrice()
        {
            var roomFinder = new RoomFinder(new SqlRoomRepository());
            var rooms      = roomFinder.SearchAvailableRooms(2, DateTime.Now, DateTime.Now);

            Assert.True(rooms.All(room => room.Price > 0));
        }
Пример #3
0
        public void ShouldReturnedRoomsHaveAPrice()
        {
            var roomFinder = new RoomFinder(new SqlRoomRepository());
            var rooms      = roomFinder.SearchAvailableRooms(2, DateTime.Now, DateTime.Now);

            rooms.Should().OnlyContain(room => room.Price > 0);
        }
        public void TestNumberOfRooms()
        {
            var roomFinder = new RoomFinder(new SqlRoomRepository());
            var rooms      = roomFinder.SearchAvailableRooms(2, DateTime.Now, DateTime.Now);

            Assert.Equal(2, rooms.Count);
        }
Пример #5
0
        public void ShouldNotAllowEndDateSmallerThanStartDate()
        {
            var roomFinder = new RoomFinder(new SqlRoomRepository());

            Action act = () => roomFinder.SearchAvailableRooms(2, DateTime.Now.AddDays(5), DateTime.Now.AddDays(0));

            act.Should().Throw <InvalidOperationException>();
        }
Пример #6
0
        public void ShouldNotAllowEndDateInThePast()
        {
            var roomFinder = new RoomFinder(new SqlRoomRepository());

            Action act = () => roomFinder.SearchAvailableRooms(2, DateTime.Now.AddDays(1), DateTime.Now.AddDays(-1));

            act.Should().Throw <InvalidOperationException>();
        }
Пример #7
0
        public void ShouldNotAllowNegativeRoomSizeSearch()
        {
            var roomFinder = new RoomFinder(new SqlRoomRepository());

            Action act = () => roomFinder.SearchAvailableRooms(-1, DateTime.Now, DateTime.Now);

            act.Should().Throw <InvalidOperationException>();
        }
Пример #8
0
        public void ShouldReturnCorrectNumberOfRooms()
        {
            var mockRepository     = new MockRepository(MockBehavior.Strict);
            var roomRepositoryMock = mockRepository.Create <IRoomRepository>();

            roomRepositoryMock.Setup(mock =>
                                     mock.SearchForRooms(It.IsAny <int>(), It.IsAny <DateTime>(), It.IsAny <DateTime>()))
            .Returns(new List <Room> {
                new Room {
                    Price = 1
                }, new Room {
                    Price = 1
                }
            });
            var subject = new RoomFinder(roomRepositoryMock.Object);

            var result = subject.SearchAvailableRooms(2, DateTime.Now, DateTime.Now);

            result.Should().HaveCount(2);
        }
        public void ShouldNotAllowStartDateInThePast()
        {
            var roomFinder = new RoomFinder(new SqlRoomRepository());

            Assert.Throws <InvalidOperationException>(() => roomFinder.SearchAvailableRooms(2, DateTime.Now.AddDays(-1), DateTime.Now));
        }
        public void ThrowOnAvailableToSmallerThanAvailableFrom()
        {
            var roomFinder = new RoomFinder(new SqlRoomRepository());

            Assert.Throws <InvalidOperationException>(() => roomFinder.SearchAvailableRooms(2, DateTime.Now.AddDays(5), DateTime.Now.AddDays(0)));
        }
        public void ThrowOnAvailableToInThePast()
        {
            var roomFinder = new RoomFinder(new SqlRoomRepository());

            Assert.Throws <InvalidOperationException>(() => roomFinder.SearchAvailableRooms(2, DateTime.Now.AddDays(1), DateTime.Now.AddDays(-1)));
        }
        public void ThrowOnInvalidNumberOfRooms()
        {
            var roomFinder = new RoomFinder(new SqlRoomRepository());

            Assert.Throws <InvalidOperationException>(() => roomFinder.SearchAvailableRooms(-1, DateTime.Now, DateTime.Now));
        }