Cómo probar el inicio de sesión / autenticación con Arquillian - Java EE 7

Tenemos una aplicación Java EE 7 y usamos Arquillian para probar cosas. Ahora queremos verificar algunos permisos del usuario que ha iniciado sesión actualmente. Mi pregunta es bastante básica, ¿cómo inicio sesión un usuario cuando estoy dentro de un testcase? he leídoProgrammaticLogin no funciona en pruebas arquillianas yGlassfish embebido, seguridad y cuestiones arquillianas. pero no están claramente respondidas. Mi enfoque actual es algo como esto:

// 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();
    }
}

Ahora, cuando intento ejecutar esto, obtengo una LoginException que dice que no tengo un LoginModule configurado para "fileRealm". Pero "fileRealm" no es el reino que estoy buscando (lo puse allí para probar por primera vez, pero luego lo cambié a "secureJDBCRealm", que es nuestro Real Security personalizado para GlassFish). Usamosarquillian-glassfish-embedded-3.1 para las pruebas.

¿Alguien sabe dónde definir el Reino para Arquillian?¿Por qué mi aplicación sigue buscando fileRealm? ¿Es este el valor predeterminado? (No pude encontrar ninguna especificación aquí)

Respuestas a la pregunta(1)

Su respuesta a la pregunta