From 984b3c2f30ca605c4035dc47b29d1d60b2833f13 Mon Sep 17 00:00:00 2001 From: Vladimir Dolzhenko Date: Thu, 3 Dec 2020 12:35:31 +0100 Subject: [PATCH] Fix to address platform expectation for project path Project path has to be absolute --- .../perf/AbstractPerformanceProjectsTest.kt | 8 +++---- .../idea/testFramework/ProjectOpenAction.kt | 21 +++++++++++-------- 2 files changed, 16 insertions(+), 13 deletions(-) diff --git a/idea/performanceTests/test/org/jetbrains/kotlin/idea/perf/AbstractPerformanceProjectsTest.kt b/idea/performanceTests/test/org/jetbrains/kotlin/idea/perf/AbstractPerformanceProjectsTest.kt index 8ae91f075bd..8c1b7cb471c 100644 --- a/idea/performanceTests/test/org/jetbrains/kotlin/idea/perf/AbstractPerformanceProjectsTest.kt +++ b/idea/performanceTests/test/org/jetbrains/kotlin/idea/perf/AbstractPerformanceProjectsTest.kt @@ -166,9 +166,9 @@ abstract class AbstractPerformanceProjectsTest : UsefulTestCase() { openAction: ProjectOpenAction, fast: Boolean = false ): Project { - val projectPath = File(path).canonicalPath + val projectPath = File(path).absolutePath - assertTrue("path $path does not exist, check README.md", File(projectPath).exists()) + assertTrue("path $projectPath does not exist, check README.md", File(projectPath).exists()) val warmUpIterations = if (fast) 0 else 5 val iterations = if (fast) 1 else 5 @@ -177,7 +177,7 @@ abstract class AbstractPerformanceProjectsTest : UsefulTestCase() { var counter = 0 val openProject = OpenProject( - projectPath = path, + projectPath = projectPath, projectName = name, jdk = jdk18, projectOpenAction = openAction @@ -230,7 +230,7 @@ abstract class AbstractPerformanceProjectsTest : UsefulTestCase() { myApplication.setDataProvider(TestDataProvider(project)) } - return lastProject ?: error("unable to open project $name at $path") + return lastProject ?: error("unable to open project $name at $projectPath") } fun perfTypeAndAutocomplete( diff --git a/idea/performanceTests/test/org/jetbrains/kotlin/idea/testFramework/ProjectOpenAction.kt b/idea/performanceTests/test/org/jetbrains/kotlin/idea/testFramework/ProjectOpenAction.kt index bf1a742c0a1..a15d598b6f6 100644 --- a/idea/performanceTests/test/org/jetbrains/kotlin/idea/testFramework/ProjectOpenAction.kt +++ b/idea/performanceTests/test/org/jetbrains/kotlin/idea/testFramework/ProjectOpenAction.kt @@ -38,10 +38,11 @@ data class OpenProject(val projectPath: String, val projectName: String, val jdk enum class ProjectOpenAction { SIMPLE_JAVA_MODULE { override fun openProject(projectPath: String, projectName: String, jdk: Sdk): Project { - val project = ProjectManagerEx.getInstanceEx().loadAndOpenProject(projectPath)!! + val path = File(projectPath).absolutePath + val project = ProjectManagerEx.getInstanceEx().loadAndOpenProject(path)!! - val modulePath = "$projectPath/$name${ModuleFileType.DOT_DEFAULT_EXTENSION}" - val projectFile = LocalFileSystem.getInstance().refreshAndFindFileByIoFile(File(projectPath))!! + val modulePath = "$path/$name${ModuleFileType.DOT_DEFAULT_EXTENSION}" + val projectFile = LocalFileSystem.getInstance().refreshAndFindFileByIoFile(File(path))!! val srcFile = projectFile.findChild("src")!! val module = runWriteAction { @@ -61,16 +62,17 @@ enum class ProjectOpenAction { EXISTING_IDEA_PROJECT { override fun openProject(projectPath: String, projectName: String, jdk: Sdk): Project { + val path = File(projectPath).absolutePath val projectManagerEx = ProjectManagerEx.getInstanceEx() - val project = loadProjectWithName(projectPath, projectName) - ?: error("project $projectName at $projectPath is not loaded") + val project = loadProjectWithName(path, projectName) + ?: error("project $projectName at $path is not loaded") runWriteAction { ProjectRootManager.getInstance(project).projectSdk = jdk } - assertTrue(projectManagerEx.openProject(project), "project $projectName at $projectPath is not opened") + assertTrue(projectManagerEx.openProject(project), "project $projectName at $path is not opened") return project } @@ -78,17 +80,18 @@ enum class ProjectOpenAction { GRADLE_PROJECT { override fun openProject(projectPath: String, projectName: String, jdk: Sdk): Project { - val project = ProjectManagerEx.getInstanceEx().loadAndOpenProject(projectPath)!! + val path = File(projectPath).absolutePath + val project = ProjectManagerEx.getInstanceEx().loadAndOpenProject(path)!! assertTrue( !project.isDisposed, - "Gradle project $projectName at $projectPath is accidentally disposed immediately after import" + "Gradle project $projectName at $path is accidentally disposed immediately after import" ) runWriteAction { ProjectRootManager.getInstance(project).projectSdk = jdk } - refreshGradleProject(projectPath, project) + refreshGradleProject(path, project) return project }