fun invokeAction()

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
        )
    }