Exemplo n.º 1
0
        public void AddBooking(string roomId, string guestEmail, string fromDateStr, string toDateStr, int expectedStatusCode)
        {
            var ev = new BookingEvent
            {
                Resource = roomId,
                Text     = guestEmail,
                Start    = fromDateStr,
                End      = toDateStr,
            };

            _mockService.Setup(s => s.GetGuestByEmail(guestEmail)).Returns(
                Task.FromResult(new Guest {
                Id = 1, Email = guestEmail
            }));
            _mockService.Setup(s => s.AddBooking(It.IsAny <Booking>())).Returns(
                Task.FromResult(new Booking {
                Guest = new Guest {
                    Email = guestEmail
                }
            }));

            var response = _controller.AddBooking(ev).GetAwaiter().GetResult();

            // Assert
            var result = response.Result as ObjectResult;

            Assert.That(result.StatusCode == expectedStatusCode);
            var resultValue = result.Value as ServiceResponse <Booking>;

            Assert.That(resultValue.Data.RoomId.ToString(), Is.EqualTo(roomId));
        }