diff --git a/plugin-checkmarx-ast/src/test/java/com/checkmarx/intellij/ast/test/ui/PageMethods/ScanResultsPannelPage.java b/plugin-checkmarx-ast/src/test/java/com/checkmarx/intellij/ast/test/ui/PageMethods/ScanResultsPannelPage.java index f4ec7e427..2c62f55ba 100644 --- a/plugin-checkmarx-ast/src/test/java/com/checkmarx/intellij/ast/test/ui/PageMethods/ScanResultsPannelPage.java +++ b/plugin-checkmarx-ast/src/test/java/com/checkmarx/intellij/ast/test/ui/PageMethods/ScanResultsPannelPage.java @@ -9,6 +9,7 @@ import com.intellij.remoterobot.utils.Keyboard; import org.junit.jupiter.api.Assertions; +import java.awt.event.KeyEvent; import java.util.List; import java.util.Optional; import java.util.UUID; @@ -192,7 +193,17 @@ public static void enterScanIdAndSelect(boolean validScanId) { } JTextFieldFixture field = fields.get(0); - field.setText(scanId); + // Use programmatic focus to avoid triggering SearchTextField history popup + field.runJs("component.requestFocusInWindow()"); + + if (!field.getHasFocus()) { + return false; + } + + Keyboard keyboard = new Keyboard(remoteRobot); + keyboard.hotKey(KeyEvent.VK_CONTROL, KeyEvent.VK_A); + keyboard.enterText(scanId); + return scanId.equals(field.getText()); }); diff --git a/plugin-checkmarx-ast/src/test/java/com/checkmarx/intellij/ast/test/ui/TestGeneral.java b/plugin-checkmarx-ast/src/test/java/com/checkmarx/intellij/ast/test/ui/TestGeneral.java index aa8a26578..ac578a257 100644 --- a/plugin-checkmarx-ast/src/test/java/com/checkmarx/intellij/ast/test/ui/TestGeneral.java +++ b/plugin-checkmarx-ast/src/test/java/com/checkmarx/intellij/ast/test/ui/TestGeneral.java @@ -72,14 +72,18 @@ public void testFilters() { @DisplayName("Invalid Scan ID Handling") public void testInvalidScanId() { waitFor(() -> { - find(JTextFieldFixture.class, SCAN_FIELD).click(); + JTextFieldFixture scanField = find(JTextFieldFixture.class, SCAN_FIELD); + // Use programmatic focus to avoid triggering SearchTextField history popup + scanField.runJs("component.requestFocusInWindow()"); - if (!find(JTextFieldFixture.class, SCAN_FIELD).getHasFocus()) { + if (!scanField.getHasFocus()) { return false; } - find(JTextFieldFixture.class, SCAN_FIELD).setText("inva-lid"); - new Keyboard(remoteRobot).key(KeyEvent.VK_ENTER); + Keyboard kb = new Keyboard(remoteRobot); + kb.hotKey(KeyEvent.VK_CONTROL, KeyEvent.VK_A); + kb.enterText("inva-lid"); + kb.key(KeyEvent.VK_ENTER); JTreeFixture tree = find(JTreeFixture.class, TREE); boolean invalidMsgDisplayed = tree.getData().getAll().get(0).getText().contains(Bundle.message(Resource.INVALID_SCAN_ID));