From 70cd075885781d64a8c35df1a81ae61396d707f2 Mon Sep 17 00:00:00 2001 From: Egor Kulikov Date: Tue, 6 Sep 2022 17:56:23 +0300 Subject: [PATCH 1/3] Sort dependencies and update descriptors --- .../plugin/models/ExternalLibraryDescriptors.kt | 11 +++++++++-- .../intellij/plugin/ui/GenerateTestsDialogWindow.kt | 3 ++- .../intellij/plugin/util/UtProjectModelModifier.kt | 6 +----- 3 files changed, 12 insertions(+), 8 deletions(-) diff --git a/utbot-intellij/src/main/kotlin/org/utbot/intellij/plugin/models/ExternalLibraryDescriptors.kt b/utbot-intellij/src/main/kotlin/org/utbot/intellij/plugin/models/ExternalLibraryDescriptors.kt index e3106f37e8..8f2ff25171 100644 --- a/utbot-intellij/src/main/kotlin/org/utbot/intellij/plugin/models/ExternalLibraryDescriptors.kt +++ b/utbot-intellij/src/main/kotlin/org/utbot/intellij/plugin/models/ExternalLibraryDescriptors.kt @@ -1,16 +1,23 @@ package org.utbot.intellij.plugin.models import com.intellij.openapi.roots.ExternalLibraryDescriptor +import org.jetbrains.idea.maven.utils.library.RepositoryLibraryDescription + +fun ExternalLibraryDescriptor.mavenCoordinates(): String = + "$libraryGroupId:$libraryArtifactId:${preferredVersion ?: RepositoryLibraryDescription.ReleaseVersionId}" + +val ExternalLibraryDescriptor.id + get() = "$libraryGroupId:$libraryArtifactId" //TODO: think about using JUnitExternalLibraryDescriptor from intellij-community sources (difficult to install) fun jUnit4LibraryDescriptor(versionInProject: String?) = - ExternalLibraryDescriptor("junit", "junit", "4.12", null, versionInProject ?: "4.13.2") + ExternalLibraryDescriptor("junit", "junit", "4.13.2", null, versionInProject ?: "4.13.2") fun jUnit5LibraryDescriptor(versionInProject: String?) = ExternalLibraryDescriptor("org.junit.jupiter", "junit-jupiter", "5.8.1", null, versionInProject ?: "5.8.1") fun testNgLibraryDescriptor(versionInProject: String?) = - ExternalLibraryDescriptor("org.testng", "testng", "6.8.8", null, versionInProject ?: "6.9.6") + ExternalLibraryDescriptor("org.testng", "testng", "7.6.0", null, versionInProject ?: "7.6.0") fun jUnit5ParametrizedTestsLibraryDescriptor(versionInProject: String?) = ExternalLibraryDescriptor("org.junit.jupiter", "junit-jupiter-params", "5.8.1", null, versionInProject ?: "5.8.1") diff --git a/utbot-intellij/src/main/kotlin/org/utbot/intellij/plugin/ui/GenerateTestsDialogWindow.kt b/utbot-intellij/src/main/kotlin/org/utbot/intellij/plugin/ui/GenerateTestsDialogWindow.kt index 80813ae7f8..7460f0763c 100644 --- a/utbot-intellij/src/main/kotlin/org/utbot/intellij/plugin/ui/GenerateTestsDialogWindow.kt +++ b/utbot-intellij/src/main/kotlin/org/utbot/intellij/plugin/ui/GenerateTestsDialogWindow.kt @@ -114,6 +114,7 @@ import org.utbot.framework.plugin.api.MockStrategyApi import org.utbot.framework.plugin.api.TreatOverflowAsError import org.utbot.framework.util.Conflict import org.utbot.intellij.plugin.models.GenerateTestsModel +import org.utbot.intellij.plugin.models.id import org.utbot.intellij.plugin.models.jUnit4LibraryDescriptor import org.utbot.intellij.plugin.models.jUnit5LibraryDescriptor import org.utbot.intellij.plugin.models.jUnit5ParametrizedTestsLibraryDescriptor @@ -792,7 +793,7 @@ class GenerateTestsDialogWindow(val model: GenerateTestsModel) : DialogWrapper(m .addDependency(model.testModule, libraryDescriptor, DependencyScope.TEST) promise.thenRun { module.allLibraries() - .lastOrNull { library -> library.libraryName == libraryDescriptor.presentableName }?.let { + .lastOrNull { library -> library.presentableName.contains(libraryDescriptor.id) }?.let { ModuleRootModificationUtil.updateModel(module) { model -> placeEntryToCorrectPlace(model, it) } } } diff --git a/utbot-intellij/src/main/kotlin/org/utbot/intellij/plugin/util/UtProjectModelModifier.kt b/utbot-intellij/src/main/kotlin/org/utbot/intellij/plugin/util/UtProjectModelModifier.kt index 1def29ff4d..a6107b0740 100644 --- a/utbot-intellij/src/main/kotlin/org/utbot/intellij/plugin/util/UtProjectModelModifier.kt +++ b/utbot-intellij/src/main/kotlin/org/utbot/intellij/plugin/util/UtProjectModelModifier.kt @@ -17,9 +17,9 @@ import com.intellij.util.PathUtil import com.intellij.util.containers.ContainerUtil import org.jetbrains.concurrency.Promise import org.jetbrains.concurrency.resolvedPromise -import org.jetbrains.idea.maven.utils.library.RepositoryLibraryDescription import org.jetbrains.idea.maven.utils.library.RepositoryLibraryProperties import org.jetbrains.jps.model.library.JpsMavenRepositoryLibraryDescriptor +import org.utbot.intellij.plugin.models.mavenCoordinates class UtProjectModelModifier(val project: Project) : IdeaProjectModelModifier(project) { override fun addExternalLibraryDependency( @@ -78,8 +78,4 @@ class UtProjectModelModifier(val project: Project) : IdeaProjectModelModifier(pr } return resolvedPromise() } - - private fun ExternalLibraryDescriptor.mavenCoordinates(): String { - return "$libraryGroupId:$libraryArtifactId:${preferredVersion ?: RepositoryLibraryDescription.ReleaseVersionId}" - } } \ No newline at end of file From ac1c0c5d46b3d1a825c80980846daece6b766abb Mon Sep 17 00:00:00 2001 From: Egor Kulikov Date: Wed, 7 Sep 2022 23:44:15 +0300 Subject: [PATCH 2/3] Revert unnecessary min version for JUnit4 --- .../utbot/intellij/plugin/models/ExternalLibraryDescriptors.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/utbot-intellij/src/main/kotlin/org/utbot/intellij/plugin/models/ExternalLibraryDescriptors.kt b/utbot-intellij/src/main/kotlin/org/utbot/intellij/plugin/models/ExternalLibraryDescriptors.kt index 8f2ff25171..48cca36ca1 100644 --- a/utbot-intellij/src/main/kotlin/org/utbot/intellij/plugin/models/ExternalLibraryDescriptors.kt +++ b/utbot-intellij/src/main/kotlin/org/utbot/intellij/plugin/models/ExternalLibraryDescriptors.kt @@ -11,7 +11,7 @@ val ExternalLibraryDescriptor.id //TODO: think about using JUnitExternalLibraryDescriptor from intellij-community sources (difficult to install) fun jUnit4LibraryDescriptor(versionInProject: String?) = - ExternalLibraryDescriptor("junit", "junit", "4.13.2", null, versionInProject ?: "4.13.2") + ExternalLibraryDescriptor("junit", "junit", "4.12", null, versionInProject ?: "4.13.2") fun jUnit5LibraryDescriptor(versionInProject: String?) = ExternalLibraryDescriptor("org.junit.jupiter", "junit-jupiter", "5.8.1", null, versionInProject ?: "5.8.1") From 2e6f1f0aeaefc46d6b7d30415bbbf274e378be32 Mon Sep 17 00:00:00 2001 From: Egor Kulikov Date: Thu, 8 Sep 2022 00:02:12 +0300 Subject: [PATCH 3/3] Convert mavenCoordinates into property --- .../intellij/plugin/models/ExternalLibraryDescriptors.kt | 6 +++--- .../utbot/intellij/plugin/util/UtProjectModelModifier.kt | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/utbot-intellij/src/main/kotlin/org/utbot/intellij/plugin/models/ExternalLibraryDescriptors.kt b/utbot-intellij/src/main/kotlin/org/utbot/intellij/plugin/models/ExternalLibraryDescriptors.kt index 48cca36ca1..c8e77720ad 100644 --- a/utbot-intellij/src/main/kotlin/org/utbot/intellij/plugin/models/ExternalLibraryDescriptors.kt +++ b/utbot-intellij/src/main/kotlin/org/utbot/intellij/plugin/models/ExternalLibraryDescriptors.kt @@ -3,10 +3,10 @@ package org.utbot.intellij.plugin.models import com.intellij.openapi.roots.ExternalLibraryDescriptor import org.jetbrains.idea.maven.utils.library.RepositoryLibraryDescription -fun ExternalLibraryDescriptor.mavenCoordinates(): String = - "$libraryGroupId:$libraryArtifactId:${preferredVersion ?: RepositoryLibraryDescription.ReleaseVersionId}" +val ExternalLibraryDescriptor.mavenCoordinates: String + get() = "$libraryGroupId:$libraryArtifactId:${preferredVersion ?: RepositoryLibraryDescription.ReleaseVersionId}" -val ExternalLibraryDescriptor.id +val ExternalLibraryDescriptor.id: String get() = "$libraryGroupId:$libraryArtifactId" //TODO: think about using JUnitExternalLibraryDescriptor from intellij-community sources (difficult to install) diff --git a/utbot-intellij/src/main/kotlin/org/utbot/intellij/plugin/util/UtProjectModelModifier.kt b/utbot-intellij/src/main/kotlin/org/utbot/intellij/plugin/util/UtProjectModelModifier.kt index a6107b0740..9adf33d7e4 100644 --- a/utbot-intellij/src/main/kotlin/org/utbot/intellij/plugin/util/UtProjectModelModifier.kt +++ b/utbot-intellij/src/main/kotlin/org/utbot/intellij/plugin/util/UtProjectModelModifier.kt @@ -38,7 +38,7 @@ class UtProjectModelModifier(val project: Project) : IdeaProjectModelModifier(pr } else { val roots = JarRepositoryManager.loadDependenciesModal( project, - RepositoryLibraryProperties(JpsMavenRepositoryLibraryDescriptor(descriptor.mavenCoordinates())), + RepositoryLibraryProperties(JpsMavenRepositoryLibraryDescriptor(descriptor.mavenCoordinates)), /* loadSources = */ false, /* loadJavadoc = */ false, /* copyTo = */ null,