Я пытаюсь смоделировать DAO с JMockit:
public interface MyDao {
Details getDetailsById(int id);
}
С этим тестовым классом:
public class TestClass {
@Test
public void testStuff(final MyDao dao) throws Exception
{
new Expectations()
{
{
// when we try to get the message details, return our sample
// details
dao.getDetailsById((Integer) any); ***THROWS AN NPE
result = sampleDetails;
}
};
ClassUsingDao daoUser = new ClassUsingDao(dao);
// calls dao.getDetailsById()
daoUser.doStuff();
}
Когда объект дао используется в блоке Ожидания, создается NPE. Я попытался переместить объявление dao в переменную-член, помеченную @Mocked, но происходит то же самое. Я также пытался использовать конкретную реализацию MyDao, и происходит то же самое.