Как проверить логин / аутентификацию с помощью Arquillian - Java EE 7
У нас есть приложение Java EE 7 и мы используем Arquillian для тестирования. Теперь мы хотим проверить некоторые разрешения текущего пользователя. Мой вопрос довольно простой, как мне войти в систему, когда пользователь находится внутри тестового набора? я прочиталProgrammaticLogin не работает в тестах Arquillian а такжеВстраиваемые вопросы Glassfish, безопасности и Arquillian но они не получили четкого ответа. Мой нынешний подход выглядит примерно так:
// Inject services etc.
@Test
public void testLogin(){
UserAccount user = new UserAccount();
user.setUsername("bob");
user.setPassword("bob");
userAccountService.save(user);
ProgrammaticLogin pl = new ProgrammaticLogin();
String realmName = "secureJDBCRealm";
try {
pl.login("bob", "bob".toCharArray(), realmName, true);
} catch (Exception e){
e.printStackTrace();
}
}
Теперь, когда я пытаюсь запустить это, я получаю исключение LoginException, утверждающее, что у меня не настроен LoginModule для "fileRealm". Но «fileRealm» - это не та область, которую я ищу (я поместил ее для тестирования в первый раз, но затем я изменил ее на «secureJDBCRealm», которая является нашей собственной областью безопасности для GlassFish). Мы используемarquillian-glassfish-embedded-3.1
для тестирования.