diff --git a/platform/testGuiFramework/src/com/intellij/testGuiFramework/util/scenarios/NewProjectDialogModel.kt b/platform/testGuiFramework/src/com/intellij/testGuiFramework/util/scenarios/NewProjectDialogModel.kt index 091080e2fd38..559c89445945 100644 --- a/platform/testGuiFramework/src/com/intellij/testGuiFramework/util/scenarios/NewProjectDialogModel.kt +++ b/platform/testGuiFramework/src/com/intellij/testGuiFramework/util/scenarios/NewProjectDialogModel.kt @@ -575,8 +575,30 @@ fun NewProjectDialogModel.createJBossProject(projectPath: String, libs: Librarie createProjectInGroup(NewProjectDialogModel.Groups.JBoss, projectPath, libs) } -fun NewProjectDialogModel.createSpringProject(projectPath: String, libs: LibrariesSet) { - createProjectInGroup(NewProjectDialogModel.Groups.Spring, projectPath, libs) +fun NewProjectDialogModel.createSpringProject(projectPath: String, createSpringConfig: Boolean, libs: LibrariesSet) { + with(guiTestCase) { + fileSystemUtils.assertProjectPathExists(projectPath) + with(connectDialog()) { + selectProjectGroup(NewProjectDialogModel.Groups.Spring) + val checkSpringConfig = checkbox("Create empty spring-config.xml") + if(createSpringConfig != checkSpringConfig.isSelected){ + checkSpringConfig.click() + } + ScreenshotOnFailure.takeScreenshot("screen1") + if (libs.isSetNotEmpty()) setLibrariesAndFrameworks(libs) + button(buttonNext).click() + logUIStep("Fill Project location with `$projectPath`") + textfield(textProjectLocation).click() + shortcut(Modifier.CONTROL + Key.X, Modifier.META + Key.X) + typeText(projectPath) + logUIStep("Close New Project dialog with Finish") + button(buttonFinish).click() + } + ideFrame { + this.waitForBackgroundTasksToFinish() + waitAMoment() + } + } } fun NewProjectDialogModel.createGroovyProject(projectPath: String, libs: LibrariesSet) { diff --git a/platform/testGuiFramework/src/com/intellij/testGuiFramework/util/scenarios/NewProjectDialogScenarios.kt b/platform/testGuiFramework/src/com/intellij/testGuiFramework/util/scenarios/NewProjectDialogScenarios.kt index 9d2ef888246b..a7d6e02043e7 100644 --- a/platform/testGuiFramework/src/com/intellij/testGuiFramework/util/scenarios/NewProjectDialogScenarios.kt +++ b/platform/testGuiFramework/src/com/intellij/testGuiFramework/util/scenarios/NewProjectDialogScenarios.kt @@ -83,4 +83,12 @@ fun NewProjectDialogScenarios.createAndCheckAppServer(serverKind: String, server welcomePageDialogModel.createNewProject() newProjectDialogModel.checkAppServerExists(expectedServerName) } -} \ No newline at end of file +} + +fun NewProjectDialogScenarios.createSpringProjectScenario(projectPath: String, createSpringConfig: Boolean, libs: LibrariesSet = emptySet()) { + with(testCase) { + fileSystemUtils.assertProjectPathExists(projectPath) + welcomePageDialogModel.createNewProject() + newProjectDialogModel.createSpringProject(projectPath, createSpringConfig, libs) + } +}