コード例 #1
0
        public void GivenHttpGetVerb_WhenRequestHasNoParameterAndServiceHasBooks_ThenShouldReturnAListOfBooksAndStatusOk()
        {
            // Arrange
            var books   = BookStub.CreateListOfSize(SIZE);
            var service = new Mock <IBookService>();

            service.Setup(s => s.RetrieveAll()).Returns(books);
            var controller = new BookController(service.Object);

            // Act
            var result = controller.Get() as OkNegotiatedContentResult <List <Book> >;

            // Assert
            service.Verify(s => s.RetrieveAll(), Times.Exactly(1));
            result.Should().BeOfType <OkNegotiatedContentResult <List <Book> > >();
            result.Content.ShouldAllBeEquivalentTo(books);
        }
コード例 #2
0
        public void GivenRetrieveAllInStock_WhenInvoked_ThenShouldReturnAllBooksInStock()
        {
            // Arrange
            var books = BookStub.CreateListOfSize(SIZE, IN_STOCK);

            var repository = new Mock <IRepository <Book> >();

            repository.Setup(r => r.Retrieve(book => book.InStock == true))
            .Returns(books);

            var service = new BookService(repository.Object);

            // Act
            var results = service.RetrieveAllInStock();

            // Assert
            results.ShouldAllBeEquivalentTo(books);
            repository.Verify(r => r.Retrieve(book => book.InStock == true), Times.Exactly(1));
        }