mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
[gui-test] find action button again if ActionToolBar was reinitialised
This commit is contained in:
+17
-10
@@ -3,12 +3,14 @@ package com.intellij.testGuiFramework.tests.community.focus
|
||||
|
||||
import com.intellij.openapi.keymap.impl.ui.ShortcutTextField
|
||||
import com.intellij.testGuiFramework.fixtures.IdeFrameFixture
|
||||
import com.intellij.testGuiFramework.framework.Timeouts
|
||||
import com.intellij.testGuiFramework.impl.*
|
||||
import com.intellij.testGuiFramework.launcher.system.SystemInfo
|
||||
import com.intellij.testGuiFramework.tests.community.CommunityProjectCreator
|
||||
import com.intellij.testGuiFramework.util.Key.*
|
||||
import com.intellij.testGuiFramework.util.Modifier.*
|
||||
import com.intellij.testGuiFramework.util.plus
|
||||
import org.fest.swing.exception.WaitTimedOutError
|
||||
import org.fest.swing.fixture.JTextComponentFixture
|
||||
import org.fest.swing.timing.Pause
|
||||
import org.junit.Assert
|
||||
@@ -34,16 +36,21 @@ class KeyMapSettingsTestFocusTest : GuiTestCase() {
|
||||
val settingsTitle = if (SystemInfo.isMac()) "Preferences" else "Settings"
|
||||
dialog(settingsTitle){
|
||||
jTree("Keymap").clickPath("Keymap")
|
||||
actionButton("Find Actions by Shortcut").waitEnabledAndShowing().click()
|
||||
val keyboardShortcutPanel = checkbox("Second stroke").target().parent
|
||||
val keyMapTextField = shortcutTextField(keyboardShortcutPanel)
|
||||
keyMapTextField.click()
|
||||
shortcut(CONTROL + N)
|
||||
Pause.pause(500)
|
||||
shortcut(B)
|
||||
Assert.assertEquals("B", keyMapTextField.target().text)
|
||||
shortcut(ESCAPE)
|
||||
shortcut(ESCAPE) //close keymap popup
|
||||
val actionButton = actionButton("Find Actions by Shortcut")
|
||||
try {
|
||||
actionButton.waitEnabledAndShowing(Timeouts.seconds10).click()
|
||||
} catch (e: WaitTimedOutError) {
|
||||
actionButton("Find Actions by Shortcut").click() // in case of ActionToolBar was reinitialised
|
||||
}
|
||||
val keyboardShortcutPanel = checkbox("Second stroke").target().parent
|
||||
val keyMapTextField = shortcutTextField(keyboardShortcutPanel)
|
||||
keyMapTextField.click()
|
||||
shortcut(CONTROL + N)
|
||||
Pause.pause(500)
|
||||
shortcut(B)
|
||||
Assert.assertEquals("B", keyMapTextField.target().text)
|
||||
shortcut(ESCAPE)
|
||||
shortcut(ESCAPE) //close keymap popup
|
||||
Pause.pause(500)
|
||||
button("Cancel").click()
|
||||
}
|
||||
|
||||
+2
-2
@@ -105,7 +105,7 @@ public class ActionButtonFixture extends JComponentFixture<ActionButtonFixture,
|
||||
return findByActionId(actionId, robot, container, Timeouts.INSTANCE.getMinutes02());
|
||||
}
|
||||
|
||||
public ActionButtonFixture waitEnabledAndShowing() {
|
||||
public ActionButtonFixture waitEnabledAndShowing(Timeout timeout) {
|
||||
Pause.pause(new Condition("wait for action to be enabled and showing") {
|
||||
@Override
|
||||
public boolean test() {
|
||||
@@ -117,7 +117,7 @@ public class ActionButtonFixture extends JComponentFixture<ActionButtonFixture,
|
||||
}
|
||||
});
|
||||
}
|
||||
}, Timeouts.INSTANCE.getSeconds30());
|
||||
}, timeout);
|
||||
return this;
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -64,8 +64,8 @@ import java.awt.*;
|
||||
import java.awt.event.KeyEvent;
|
||||
import java.awt.event.MouseEvent;
|
||||
import java.io.File;
|
||||
import java.util.List;
|
||||
import java.util.*;
|
||||
import java.util.List;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
import static com.intellij.openapi.util.io.FileUtil.getRelativePath;
|
||||
@@ -469,7 +469,7 @@ public class IdeFrameFixture extends ComponentFixture<IdeFrameFixture, IdeFrameI
|
||||
}, Timeouts.INSTANCE.getMinutes02());
|
||||
|
||||
waitForBackgroundTasksToFinish();
|
||||
findGradleSyncAction().waitEnabledAndShowing();
|
||||
findGradleSyncAction().waitEnabledAndShowing(Timeouts.INSTANCE.getMinutes01());
|
||||
// TODO figure out why in IDEA 15 even though an action is enabled, visible and showing, clicking it (via UI testing infrastructure)
|
||||
// does not work consistently
|
||||
|
||||
|
||||
Reference in New Issue
Block a user