in remote-fixtures/src/main/kotlin/com/intellij/remoterobot/steps/CommonSteps.kt [16:33]
fun invokeAction(@StepParameter("Action", "Close Project", StepParameter.UiType.ACTION_ID) actionId: String) {
remoteRobot.runJs(
"""
importClass(com.intellij.openapi.application.ApplicationManager)
const actionId = "$actionId";
const actionManager = com.intellij.openapi.actionSystem.ActionManager.getInstance();
const action = actionManager.getAction(actionId);
const runAction = new Runnable({
run: function() {
actionManager.tryToExecute(action, com.intellij.openapi.ui.playback.commands.ActionCommand.getInputEvent(actionId), null, null, true);
}
})
ApplicationManager.getApplication().invokeLater(runAction)
""", true
)
}