From f8db8ce0c558c398d6ce6c69ae477e7ac7792420 Mon Sep 17 00:00:00 2001 From: "Vassiliy.Kudryashov" Date: Wed, 26 Oct 2022 21:18:42 +0300 Subject: [PATCH 1/2] Incorrect default test root on antlr project #1017 --- .../plugin/ui/GenerateTestsDialogWindow.kt | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) 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 942fb7bda3..9695914918 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 @@ -10,9 +10,9 @@ import com.intellij.openapi.command.WriteCommandAction import com.intellij.openapi.components.service import com.intellij.openapi.editor.colors.EditorColorsManager import com.intellij.openapi.module.Module +import com.intellij.openapi.module.ModuleUtil import com.intellij.openapi.options.ShowSettingsUtil import com.intellij.openapi.projectRoots.JavaSdkVersion -import com.intellij.openapi.roots.ContentEntry import com.intellij.openapi.roots.DependencyScope import com.intellij.openapi.roots.ExternalLibraryDescriptor import com.intellij.openapi.roots.JavaProjectModelModificationService @@ -423,11 +423,13 @@ class GenerateTestsDialogWindow(val model: GenerateTestsModel) : DialogWrapper(m return null } + private fun VirtualFile.toRealFile():VirtualFile = if (this is FakeVirtualFile) this.parent else this + override fun doValidate(): ValidationInfo? { val testRoot = getTestRoot() ?: return ValidationInfo("Test source root is not configured", testSourceFolderField.childComponent) - if (!model.project.isBuildWithGradle && findReadOnlyContentEntry(testRoot) == null) { + if (!model.project.isBuildWithGradle && ModuleUtil.findModuleForFile(testRoot.toRealFile(), model.project) == null) { return ValidationInfo("Test source root is located out of content entry", testSourceFolderField.childComponent) } @@ -606,16 +608,6 @@ class GenerateTestsDialogWindow(val model: GenerateTestsModel) : DialogWrapper(m "Generation error" ) - private fun findReadOnlyContentEntry(testSourceRoot: VirtualFile?): ContentEntry? { - if (testSourceRoot == null) return null - if (testSourceRoot is FakeVirtualFile) { - return findReadOnlyContentEntry(testSourceRoot.parent) - } - return ModuleRootManager.getInstance(model.testModule).contentEntries - .filterNot { it.file == null } - .firstOrNull { VfsUtil.isAncestor(it.file!!, testSourceRoot, false) } - } - private fun getOrCreateTestRoot(testSourceRoot: VirtualFile): Boolean { val modifiableModel = ModuleRootManager.getInstance(model.testModule).modifiableModel try { From 8ac140fab4bd4cf93f7ae6502b4593745f9186be Mon Sep 17 00:00:00 2001 From: "Vassiliy.Kudryashov" Date: Thu, 27 Oct 2022 11:59:24 +0300 Subject: [PATCH 2/2] Incorrect default test root on antlr project #1017 Fix for validation message text --- .../org/utbot/intellij/plugin/ui/GenerateTestsDialogWindow.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 9695914918..ac4703526c 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 @@ -430,7 +430,7 @@ class GenerateTestsDialogWindow(val model: GenerateTestsModel) : DialogWrapper(m ?: return ValidationInfo("Test source root is not configured", testSourceFolderField.childComponent) if (!model.project.isBuildWithGradle && ModuleUtil.findModuleForFile(testRoot.toRealFile(), model.project) == null) { - return ValidationInfo("Test source root is located out of content entry", testSourceFolderField.childComponent) + return ValidationInfo("Test source root is located out of any module", testSourceFolderField.childComponent) } membersTable.tableHeader?.background = UIUtil.getTableBackground()