Exemplo n.º 1
0
        public void BookingController_Post_Book_Should_Create_A_Booking()
        {
            //Arange
            var bookingEventId = 1;
            var userId         = 1;

            _repository.Setup(x => x.Find(It.IsAny <Expression <Func <BookingEvent, bool> > >()))
            .Returns(new BookingEvent {
                Id = bookingEventId, ApplicationType = ApplicationType.Web,
            });

            _repository.Setup(x => x.Find(It.IsAny <Expression <Func <User, bool> > >()))
            .Returns(new User {
                Id = userId, Name = "jonh"
            });

            var sut     = new BookingController(_logger.Object, _bookingService.Object, _repository.Object);
            var booking = new BookingViewModel {
                BookingEventId = bookingEventId, UserId = userId
            };

            //Act
            var result = sut.Book(booking);
            var status = result as OkResult;

            //Assert
            Assert.IsNotNull(status);
            Assert.AreEqual(200, status.StatusCode);
        }