From 901ab35a48568e47720a626ffda8e36c68fcdee1 Mon Sep 17 00:00:00 2001 From: "vladislav.shishov" Date: Thu, 17 Oct 2024 23:43:53 +0300 Subject: [PATCH] [remote-driver] add BuiltInHttpClientRequestWithBodyGenerationUiTest GitOrigin-RevId: 01933923294bb32fce33908f81128cccf0630b04 --- .../test-sdk/src/com/intellij/driver/sdk/editors.kt | 5 ++++- .../src/com/intellij/driver/sdk/ui/components/JEditorUi.kt | 6 ++++++ .../test-sdk/src/com/intellij/driver/sdk/ui/utils.kt | 2 ++ 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/platform/remote-driver/test-sdk/src/com/intellij/driver/sdk/editors.kt b/platform/remote-driver/test-sdk/src/com/intellij/driver/sdk/editors.kt index 291f9b566671..4c67a6710540 100644 --- a/platform/remote-driver/test-sdk/src/com/intellij/driver/sdk/editors.kt +++ b/platform/remote-driver/test-sdk/src/com/intellij/driver/sdk/editors.kt @@ -5,6 +5,7 @@ import com.intellij.driver.client.Remote import com.intellij.driver.client.service import com.intellij.driver.model.OnDispatcher import com.intellij.driver.sdk.remoteDev.GuestNavigationService +import com.intellij.driver.sdk.ui.RectangleRef import java.awt.Point import kotlin.time.Duration.Companion.seconds @@ -17,9 +18,10 @@ interface Editor { fun getVirtualFile(): VirtualFile fun getLineHeight(): Int fun offsetToVisualPosition(offset: Int): VisualPosition - fun visualPositionToXY(visible: VisualPosition): Point + fun visualPositionToXY(visualPosition: VisualPosition): Point fun getInlayModel(): InlayModel fun getColorsScheme(): EditorColorsScheme + fun logicalPositionToOffset(logicalPosition: LogicalPosition): Int } @Remote("com.intellij.openapi.editor.VisualPosition") interface VisualPosition { @@ -49,6 +51,7 @@ interface InlayModel { interface Inlay { fun getRenderer(): EditorCustomElementRenderer fun getOffset(): Int + fun getBounds(): RectangleRef } @Remote("com.intellij.openapi.editor.EditorCustomElementRenderer") diff --git a/platform/remote-driver/test-sdk/src/com/intellij/driver/sdk/ui/components/JEditorUi.kt b/platform/remote-driver/test-sdk/src/com/intellij/driver/sdk/ui/components/JEditorUi.kt index 253e4d0f23b6..a78d44445407 100644 --- a/platform/remote-driver/test-sdk/src/com/intellij/driver/sdk/ui/components/JEditorUi.kt +++ b/platform/remote-driver/test-sdk/src/com/intellij/driver/sdk/ui/components/JEditorUi.kt @@ -8,6 +8,7 @@ import com.intellij.driver.sdk.* import com.intellij.driver.sdk.remoteDev.BeControlClass import com.intellij.driver.sdk.remoteDev.EditorComponentImplBeControlBuilder import com.intellij.driver.sdk.ui.Finder +import com.intellij.driver.sdk.ui.center import com.intellij.driver.sdk.ui.remote.Component import org.intellij.lang.annotations.Language import java.awt.Point @@ -37,6 +38,11 @@ class JEditorUiComponent(data: ComponentData) : UiComponent(data) { fun isEditable() = editorComponent.isEditable() + fun clickInlay(inlay: Inlay) { + val inlayCenter = driver.withContext(OnDispatcher.EDT) { inlay.getBounds() }.center + click(inlayCenter) + } + fun getInlayHints(): List { val hints = mutableListOf() this.editor.getInlayModel().getInlineElementsInRange(0, Int.MAX_VALUE).forEach { element -> diff --git a/platform/remote-driver/test-sdk/src/com/intellij/driver/sdk/ui/utils.kt b/platform/remote-driver/test-sdk/src/com/intellij/driver/sdk/ui/utils.kt index 7fa0e83ca26b..606c8d91dd86 100644 --- a/platform/remote-driver/test-sdk/src/com/intellij/driver/sdk/ui/utils.kt +++ b/platform/remote-driver/test-sdk/src/com/intellij/driver/sdk/ui/utils.kt @@ -61,6 +61,8 @@ interface RectangleRef { fun getCenterY(): Double } +val RectangleRef.center get() = Point(getCenterX().toInt(), getCenterY().toInt()) + fun printableString(toPrint: String): String { val resultString = toPrint.let { val maxLength = 600