Если у меня есть следующий метод:
public void handleUser(String user) {
User user = new User("Bob");
Phone phone = userDao.getPhone(user);
//something else
}
Когда я тестирую это с макетами с помощью EasyMock, могу ли я в любом случае протестировать параметр User, который я передал в мой макет UserDao, следующим образом:
User user = new User("Bob");
EasyMock.expect(userDaoMock.getPhone(user)).andReturn(new Phone());
Когда я пытался запустить вышеуказанный тест, он жалуется на неожиданный вызов метода, который я предполагаю, потому что фактически созданный в методе пользователь не совпадает с тем, который я передаю ... я прав в этом?
Или это самый строгий способ проверить параметр, который я передаю в UserDao, просто:
EasyMock.expect(userDaoMock.getPhone(EasyMock.isA(User.class))).andReturn(new Phone());