コード例 #1
0
        public void get_overdue_books_returns_all_books_which_are_overdue()
        {
            //given
            var overDueBooksId = TestData.IssuedBooks.Where(i => DateTime.Now.Subtract(i.ReturnDate).Days > 0).Select(s => s.BookId).ToList();
            var overDueBooks   = TestData.Books.Where(b => overDueBooksId.Contains(b.BookId));

            moqBookService.Setup(m => m.GetOverdueBooks()).Returns(overDueBooks);
            var sut = new BookStoreService(moqStudentService.Object, moqBookService.Object, moqBookAllocationService.Object);

            //when
            var result = sut.GetOverdueBooks();

            //then
            Assert.IsInstanceOfType(result, typeof(IEnumerable <Book>));
            moqBookService.Verify(v => v.GetOverdueBooks(), Times.Once);
        }