Пример #1
0
        //private readonly DeskBookingRequestProcessor _processor;

        public DeskBookingTests()
        {
            _request = new DeskBookingRequest
            {
                FirstName = "Thomas",
                LastName  = "Huber",
                Email     = "*****@*****.**",
                Date      = new DateTime(2020, 1, 28)
            };

            _availableDesks = new List <Desk> {
                new Desk {
                    Id = 7
                }
            };

            _deskBookingRepositoryMock = new Mock <IDeskBookingRepository>();
            _deskRepositoryMock        = new Mock <IDeskRepository>();
            _deskRepositoryMock.Setup(x => x.GetAvailableDesks(_request.Date))
            .Returns(_availableDesks);
            _booking = new DeskBooking(_deskBookingRepositoryMock.Object,
                                       _deskRepositoryMock.Object);

            //_processor = new DeskBookingRequestProcessor(_deskBookingRepositoryMock.Object, _deskRepositoryMock.Object);
        }
Пример #2
0
        public void ShouldReturnDeskBookingResultWithRequestValues()
        {
            // Act
            DeskBooking result = _booking.CreateBooking(_request);

            // Assert
            Assert.NotNull(result);
            Assert.Equal(_request.FirstName, result.FirstName);
            Assert.Equal(_request.LastName, result.LastName);
            Assert.Equal(_request.Email, result.Email);
            Assert.Equal(_request.Date, result.Date);
        }
Пример #3
0
        public void ShouldSaveDeskBooking()
        {
            DeskBooking savedDeskBooking = null;

            _deskBookingRepositoryMock.Setup(x => x.Save(It.IsAny <DeskBooking>()))
            .Callback <DeskBooking>(deskBooking =>
            {
                savedDeskBooking = deskBooking;
            });

            _booking.CreateBooking(_request);

            // This fails - I get error:  System.NullReferenceException : Object reference not set to an instance of an object.
            // Can't figure out why
            _deskBookingRepositoryMock.Verify(x => x.Save(It.IsAny <DeskBooking>()), Times.Once);

            Assert.NotNull(savedDeskBooking);
            Assert.Equal(_request.FirstName, savedDeskBooking.FirstName);
            Assert.Equal(_request.LastName, savedDeskBooking.LastName);
            Assert.Equal(_request.Email, savedDeskBooking.Email);
            Assert.Equal(_request.Date, savedDeskBooking.Date);
            Assert.Equal(_availableDesks.First().Id, savedDeskBooking.DeskId);
        }