У меня есть простой модульный тест, чтобы убедиться, что главное окно приложения не украшено:
public class MainWindowUT extends AbstractMainWindowTest {
@Test
public void whenApplicationIsStarted_thenMainFrameIsUndecorated() {
@SuppressWarnings("boxing")
Boolean isUndecorated = GuiActionRunner.execute(() -> window.target().isUndecorated());
assertThat(isUndecorated).isTrue();
}
}
AbstractMainWindowTest это:
public abstract class AbstractMainWindowTest extends AssertJSwingJUnitTestCase {
protected FrameFixture window;
@Override
protected void onSetUp() {
ScaleRuler frame = GuiActionRunner.execute(() -> new ScaleRuler());
window = new FrameFixture(robot(), frame);
window.show();
}
}
ScaleRuler — это мой фрейм, который на данный момент ничего не делает, просто устанавливает Undecorated(true). Тест проходит нормально. Как мне выполнить тот же тест из Cucumber?
public final class WindowAspectSteps {
@Then("the main window should be undecorated")
public void checkMainWindowIsUndecorated() {
//????
}
}
Я попытался сделать WindowAspectSteps для расширения AbstractMainWindowTest, но переменная окна остается нулевой.