Я создал компонент SEAM, который проверяет наличие хотя бы одного пользователя с правами глобального администратора и создает его, если нет.
@Name("installer")
@Stateless
public class InstallerBean implements Installer, Serializable{
@Observer("org.jboss.seam.postInitialization")
public void install() {
...
}
public boolean isInstalled() {
...
}
}
Теперь мне нужно проверить правильность работы установщика. Мне нужно проверить, что isInstalled() возвращает true, и убедиться, что в базе данных существуют правильные пользователи и роли. Однако SeamTest.ComponentTest.testComponents() запускается до завершения моей установки. Я вижу в журнале, что последние сообщения от моего установщика появляются в середине выполнения второго теста, поэтому мои тесты случайным образом терпят неудачу.
Я пытаюсь проверить свой установщик следующим образом:
public class InstallerTests extends SeamTest {
@Test
public void isInstalledTest() {
new ComponentTest() {
@Override
protected void testComponents() {
...
}
}
}
...
}
Как запустить тест после завершения установки?
Я новичок в SEAM, поэтому, возможно, я все делаю неправильно. Пожалуйста, скажите мне, есть ли лучший способ.