@@ -65,7 +65,6 @@ import com.intellij.ui.layout.ComboBoxPredicate
6565import com.intellij.ui.layout.Row
6666import com.intellij.ui.layout.enableIf
6767import com.intellij.ui.layout.panel
68- import com.intellij.ui.layout.selectedValueMatches
6968import com.intellij.util.IncorrectOperationException
7069import com.intellij.util.io.exists
7170import com.intellij.util.lang.JavaVersion
@@ -120,7 +119,6 @@ import org.utbot.framework.plugin.api.MockFramework
120119import org.utbot.framework.plugin.api.MockFramework.MOCKITO
121120import org.utbot.framework.plugin.api.MockStrategyApi
122121import org.utbot.framework.plugin.api.TreatOverflowAsError
123- import org.utbot.framework.plugin.api.isSummarizationCompatible
124122import org.utbot.framework.plugin.api.utils.MOCKITO_EXTENSIONS_FILE_CONTENT
125123import org.utbot.framework.plugin.api.utils.MOCKITO_EXTENSIONS_FOLDER
126124import org.utbot.framework.plugin.api.utils.MOCKITO_MOCKMAKER_FILE_NAME
@@ -152,8 +150,10 @@ import org.utbot.intellij.plugin.ui.utils.parseVersion
152150import org.utbot.intellij.plugin.ui.utils.testResourceRootTypes
153151import org.utbot.intellij.plugin.ui.utils.testRootType
154152import org.utbot.intellij.plugin.util.IntelliJApiHelper
153+ import org.utbot.intellij.plugin.util.SpringConfigurationsHelper
155154import org.utbot.intellij.plugin.util.extractFirstLevelMembers
156155import org.utbot.intellij.plugin.util.findSdkVersion
156+ import java.io.File
157157import java.time.LocalDateTime
158158import java.time.format.DateTimeFormatter
159159import java.util.*
@@ -192,12 +192,10 @@ class GenerateTestsDialogWindow(val model: GenerateTestsModel) : DialogWrapper(m
192192 private val codegenLanguages = createComboBox(CodegenLanguage .values())
193193 private val testFrameworks = createComboBox(TestFramework .allItems.toTypedArray())
194194
195- private val modelSpringConfigs = setOf (
196- null to listOf (NO_SPRING_CONFIGURATION_OPTION ),
197- " Java-based configurations" to model.getSortedSpringConfigurationClasses(),
198- " XML-based configurations" to model.getSpringXMLConfigurationFiles()
199- )
200- private val springConfig = createComboBoxWithSeparatorsForSpringConfigs(modelSpringConfigs)
195+ private val javaConfigurationHelper = SpringConfigurationsHelper (" ." )
196+ private val xmlConfigurationHelper = SpringConfigurationsHelper (File .separator)
197+
198+ private val springConfig = createComboBoxWithSeparatorsForSpringConfigs(shortenConfigurationNames())
201199
202200 private val mockStrategies = createComboBox(MockStrategyApi .values())
203201 private val staticsMocking = JCheckBox (" Mock static methods" )
@@ -223,6 +221,20 @@ class GenerateTestsDialogWindow(val model: GenerateTestsModel) : DialogWrapper(m
223221 parametrizedTestSources to null
224222 )
225223
224+ private fun shortenConfigurationNames (): Set <Pair <String ?, Collection <String >>> {
225+ val shortenedSortedSpringConfigurationClasses =
226+ javaConfigurationHelper.shortenSpringConfigNames(model.getSortedSpringConfigurationClasses())
227+
228+ val shortenedSpringXMLConfigurationFiles =
229+ xmlConfigurationHelper.shortenSpringConfigNames(model.getSpringXMLConfigurationFiles())
230+
231+ return setOf (
232+ null to listOf (NO_SPRING_CONFIGURATION_OPTION ),
233+ " Java-based configurations" to shortenedSortedSpringConfigurationClasses,
234+ " XML-based configurations" to shortenedSpringXMLConfigurationFiles
235+ )
236+ }
237+
226238 private fun <T : CodeGenerationSettingItem > createComboBox (values : Array <T >) : ComboBox <T > {
227239 val comboBox = object : ComboBox <T >(DefaultComboBoxModel (values)) {
228240 var maxWidth = 0
@@ -580,7 +592,17 @@ class GenerateTestsDialogWindow(val model: GenerateTestsModel) : DialogWrapper(m
580592 model.typeReplacementApproach =
581593 when (springConfig.item.getItem()) {
582594 NO_SPRING_CONFIGURATION_OPTION -> TypeReplacementApproach .DoNotReplace
583- else -> TypeReplacementApproach .ReplaceIfPossible (springConfig.item.getItem().toString())
595+ else -> {
596+ val shortConfigName = springConfig.item.getItem().toString()
597+ // TODO: avoid this check on xml here, merge two helpers into one
598+ val fullConfigName = if (shortConfigName.endsWith(" .xml" )) {
599+ xmlConfigurationHelper.restoreFullName(shortConfigName)
600+ } else {
601+ javaConfigurationHelper.restoreFullName(shortConfigName)
602+ }
603+
604+ TypeReplacementApproach .ReplaceIfPossible (fullConfigName)
605+ }
584606 }
585607
586608 val settings = model.project.service<Settings >()
@@ -1115,8 +1137,7 @@ class GenerateTestsDialogWindow(val model: GenerateTestsModel) : DialogWrapper(m
11151137
11161138 private fun updateSpringConfigurationEnabled () {
11171139 // We check for > 1 because there is already extra-dummy NO_SPRING_CONFIGURATION_OPTION option
1118- springConfig.isEnabled = model.projectType == ProjectType .Spring
1119- && modelSpringConfigs.size > 1
1140+ springConfig.isEnabled = model.projectType == ProjectType .Spring && springConfig.itemCount > 1
11201141 }
11211142
11221143 private fun staticsMockingConfigured (): Boolean {
0 commit comments