//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); }
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); }
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); }