public void TestAddBook() { var shelfManagerMock = new Mock <IShelfManager>(); var bookManagerMock = new Mock <IBookManager>(); shelfManagerMock.Setup(m => m.GetShelf(It.IsAny <int>())) .Returns(new Shelf { ShelfID = 1, ShelfNumber = 1, }); bookManagerMock.Setup(m => m.GetListOfBooksByTitle(It.IsAny <string>())) .Returns(new List <Book>()); bookManagerMock.Setup(m => m.AddBook(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <double>(), It.IsAny <long>(), It.IsAny <int>())); var bookAPI = new BookAPI(bookManagerMock.Object, shelfManagerMock.Object); var successfull = bookAPI.AddNewBook("Clean Code", "Robert", 450.30, 9780136083221, 1); Assert.AreEqual(BookErrorCodes.ok, successfull); bookManagerMock.Verify(m => m.AddBook(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <double>(), It.IsAny <long>(), It.IsAny <int>()), Times.Once); }
public void TestAddBookNoSuchShelf() { var shelfManagerMock = new Mock <IShelfManager>(); var bookManagerMock = new Mock <IBookManager>(); shelfManagerMock.Setup(m => m.GetShelf(It.IsAny <int>())) .Returns <Shelf>(null); bookManagerMock.Setup(m => m.AddBook(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <double>(), It.IsAny <long>(), It.IsAny <int>())); var bookAPI = new BookAPI(bookManagerMock.Object, shelfManagerMock.Object); var successfull = bookAPI.AddNewBook("Clean Code", "Robert", 450, 9780136083221, 1); Assert.AreEqual(BookErrorCodes.NoSuchShelf, successfull); bookManagerMock.Verify(m => m.AddBook(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <double>(), It.IsAny <long>(), It.IsAny <int>()), Times.Never); }
public void TestAddBookWrongISBN() { var shelfManagerMock = new Mock <IShelfManager>(); var bookManagerMock = new Mock <IBookManager>(); shelfManagerMock.Setup(m => m.GetShelf(It.IsAny <int>())) .Returns(new Shelf { ShelfID = 1, ShelfNumber = 1, }); bookManagerMock.Setup(m => m.AddBook(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <double>(), It.IsAny <long>(), It.IsAny <int>())); var bookAPI = new BookAPI(bookManagerMock.Object, shelfManagerMock.Object); var successfull = bookAPI.AddNewBook("Clean Code", "Robert", 450, 9180136083221, 1); Assert.AreEqual(BookErrorCodes.IncorrectISBN, successfull); bookManagerMock.Verify(m => m.AddBook(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <double>(), It.IsAny <long>(), It.IsAny <int>()), Times.Never); }