user1.setDescription("111");
user1.setBirthday(new Date().toString());
user1.setUserName("User1");
user1.setPassword("password1");
user1.setUserId(111);
User user2 = new User();
user2.setDescription("222");
user2.setBirthday(new Date().toString());
user2.setUserName("User2");
user2.setPassword("password2");
user2.setUserId(222);
List userList = new ArrayList<>();
userList.add(user1);
userList.add(user2);
MockUp bookDao = new MockUp() {
@Mock
List findBookByIdInRental(@Param("bookId") String bookId) {
return bookList;
}
@Mock
int deleteBorrowLog(@Param("userId") String userId, @Param("bookId") String bookId) {
return 1;
}
@Mock
int quantityAdd(@Param("bookId") String bookId) {
return 1;
}
};
MockUp userDaoMockUp = new MockUp() {
@Mock
List findUserByIdInRental(@Param("userId") String userId) {
return userList;
}
};
new Expectations() {
{
Deencapsulation.setField(bookServiceImpl, "bookDao", bookDao.getMockInstance());
Deencapsulation.setField(bookServiceImpl, "userDao", userDaoMockUp.getMockInstance());
}
};
boolean result = bookServiceImpl.returnBookCheck(null, null);
assertTrue(result);
}
@Test
public void returnBookCheckForISmallerThanOne() throws MyException {
Book book1 = new Book();
book1.setBookId("BookId1");
book1.setBookName("BookName1");
book1.setAuthorName("AuthorName1");
book1.setEducationName("EducationName1");
book1.setQuantity(5);
Book book2 = new Book();
book2.setBookId("BookId2");
book2.setBookName("BookName2");
book2.setAuthorName("AuthorName2");
book2.setEducationName("EducationName2");
book2.setQuantity(7);
List bookList = new ArrayList<>();
bookList.add(book1);
bookList.add(book2);
User user1 = new User();
user1.setDescription("111");
user1.setBirthday(new Date().toString());
user1.setUserName("User1");
user1.setPassword("password1");
user1.setUserId(111);
User user2 = new User();
user2.setDescription("222");
user2.setBirthday(new Date().toString());
user2.setUserName("User2");
user2.setPassword("password2");
user2.setUserId(222);
List userList = new ArrayList<>();
userList.add(user1);
userList.add(user2);
MockUp bookDao = new MockUp() {
@Mock
List findBookByIdInRental(@Param("bookId") String bookId) {
return bookList;
}
@Mock
int deleteBorrowLog(@Param("userId") String userId, @Param("bookId") String bookId) {
return 0;
}
@Mock
int quantityAdd(@Param("bookId") String bookId) {
return 1;
}
};
MockUp userDaoMockUp = new MockUp() {
@Mock
List findUserByIdInRental(@Param("userId") String userId) {
return userList;
}
};
new Expectations() {
{
Deencapsulation.setField(bookServiceImpl, "bookDao", bookDao.getMockInstance());
Deencapsulation.setField(bookServiceImpl, "userDao", userDaoMockUp.getMockInstance());
}
};
boolean result = bookServiceImpl.returnBookCheck(null, null);
assertTrue(!result);
}
@Test
public void returnBookCheckForBookError() throws MyException {
boolean thrown = false;
List bookList = new ArrayList<>();
User user1 = new User();
user1.setDescription("111");
user1.setBirthday(new Date().toString());
user1.setUserName("User1");
user1.setPassword("password1");
user1.setUserId(111);
User user2 = new User();
user2.setDescription("222");
user2.setBirthday(new Date().toString());
user2.setUserName("User2");
user2.setPassword("password2");
user2.setUserId(222);
List userList = new ArrayList<>();
userList.add(user1);
userList.add(user2);
MockUp bookDao = new MockUp() {
@Mock
List findBookByIdInRental(@Param("bookId") String bookId) {
return bookList;
}
@Mock
int deleteBorrowLog(@Param("userId") String userId, @Param("bookId") String bookId) {
return 0;
}
@Mock
int quantityAdd(@Param("bookId") String bookId) {
return 1;
}
};
MockUp userDaoMockUp = new MockUp() {
@Mock
List findUserByIdInRental(@Param("userId") String userId) {
return userList;
}
};