Я должен высмеять следующий шаг безопасности, используя EasyMock или UnitilsMock.Не могли бы вы предложить способ достижения этого?
String id = context.getCallerPrincipal().getName();
Этот шаг связан с безопасностью.Поэтому я не смогу создать объект Принципа и сделать двухуровневую насмешку.Я знаю, что mockito легко обрабатывает такие вещи следующим образом:
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
SessionContext mockContext;
Но мне нужно подобное решение с использованием EasyMock или Unitils Mock.Полный код, который я хочу для модульного тестирования, приведен ниже,
@Override
@PermitAll
public List<Employee> findAll() {
boolean isAdmin = context.isCallerInRole(Roles.ADMIN);
if (isAdmin) {
return super.findAll();
} else {
String id = context.getCallerPrincipal().getName();
Query query = getEntityManager().createNamedQuery("findEmployeeById");
query.setParameter("employeeId", id);
return query.getResultList();
}
}
-Спасибо