Advertisement
Guest User

Untitled

a guest
May 27th, 2017
230
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.82 KB | None | 0 0
  1. // The UserDAO
  2. public User login(String username, String password) {
  3. DetachedCriteria criteria = DetachedCriteria.forClass(User.class);
  4. criteria.add(Restrictions.eq("username", username));
  5. criteria.add(Restrictions.eq("password", password));
  6. criteria.setResultTransformer(DetachedCriteria.DISTINCT_ROOT_ENTITY);
  7.  
  8. List<User> list = getHibernateTemplate().findByCriteria(criteria);
  9. if (list == null || list.size() == 0) {
  10. return null;
  11. }
  12. return list.get(0);
  13. }
  14.  
  15. // Test class
  16. public class UserDAOTest {
  17.  
  18. @Mock
  19. private HibernateTemplate hibernateTemplate;
  20. @InjectMocks
  21. private UserDAO userDAO;
  22.  
  23.  
  24. @BeforeClass
  25. public void init() {
  26. userDAO = new UserDAOHibernateImpl(User.class);
  27. MockitoAnnotations.initMocks(this);
  28. }
  29.  
  30. @Test
  31. public void testLogin() {
  32. List<User> users = new ArrayList<User>();
  33. users.add(new User());
  34.  
  35. DetachedCriteria criteria = DetachedCriteria.forClass(User.class);
  36. criteria.add(Restrictions.eq("username", "username"));
  37. criteria.add(Restrictions.eq("password", "password"));
  38. criteria.setResultTransformer(DetachedCriteria.DISTINCT_ROOT_ENTITY);
  39. when(hibernateTemplate.findByCriteria(criteria)).thenReturn(users);
  40.  
  41. User user = userDAO.login("username", "password");
  42. verify(hibernateTemplate).findByCriteria(criteria);
  43.  
  44. assertNotNull(user);
  45. }
  46. }
  47.  
  48.  
  49. // The exception
  50. FAILED: testLogin
  51. Argument(s) are different! Wanted:
  52. hibernateTemplate.findByCriteria(
  53. DetachableCriteria(CriteriaImpl(org.durre.memories.pojos.User:this[][username=username, password=password]))
  54. );
  55. -> at org.durre.memories.dao.UserDAOTest.testLogin(UserDAOTest.java:50)
  56. Actual invocation has different arguments:
  57. hibernateTemplate.findByCriteria(
  58. DetachableCriteria(CriteriaImpl(org.durre.memories.pojos.User:this[][username=username, password=password]))
  59. );
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement