Skip to content

Commit 3580196

Browse files
authored
Enable Fuzzer in Spring no-config test generation (#2137)
1 parent 6a59c72 commit 3580196

File tree

3 files changed

+11
-10
lines changed

3 files changed

+11
-10
lines changed

utbot-framework/src/main/kotlin/org/utbot/framework/plugin/api/TestFlow.kt

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import kotlinx.coroutines.flow.flattenConcat
66
import kotlinx.coroutines.flow.flowOf
77
import org.utbot.engine.UtBotSymbolicEngine
88
import org.utbot.framework.UtSettings
9+
import org.utbot.framework.process.generated.GenerateParams
910

1011
/**
1112
* Constructs [TestFlow] for customization and creates flow producer.
@@ -27,11 +28,11 @@ fun defaultTestFlow(timeout: Long) = testFlow {
2728
/**
2829
* Creates default flow for Spring application.
2930
*/
30-
fun defaultSpringFlow(timeout: Long) = testFlow {
31+
fun defaultSpringFlow(params: GenerateParams) = testFlow {
32+
generationTimeout = params.generationTimeout
3133
isSymbolicEngineEnabled = true
32-
generationTimeout = timeout
33-
isFuzzingEnabled = false
34-
fuzzingValue = 0.0
34+
isFuzzingEnabled = params.isFuzzingEnabled
35+
fuzzingValue = params.fuzzingValue
3536
}
3637

3738
/**

utbot-framework/src/main/kotlin/org/utbot/framework/process/EngineProcessMain.kt

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
package org.utbot.framework.process
22

33
import com.jetbrains.rd.framework.IProtocol
4-
import com.jetbrains.rd.util.Logger
5-
import com.jetbrains.rd.util.lifetime.Lifetime
64
import kotlinx.coroutines.runBlocking
75
import mu.KotlinLogging
86
import org.utbot.analytics.AnalyticsConfigureUtil
@@ -31,9 +29,7 @@ import org.utbot.instrumentation.util.KryoHelper
3129
import org.utbot.rd.IdleWatchdog
3230
import org.utbot.rd.ClientProtocolBuilder
3331
import org.utbot.rd.RdSettingsContainerFactory
34-
import org.utbot.rd.findRdPort
3532
import org.utbot.rd.generated.settingsModel
36-
import org.utbot.rd.loggers.UtRdKLoggerFactory
3733
import org.utbot.rd.terminateOnException
3834
import org.utbot.sarif.RdSourceFindingStrategyFacade
3935
import org.utbot.sarif.SarifReport
@@ -113,7 +109,7 @@ private fun EngineProcessModel.setup(kryoHelper: KryoHelper, watchdog: IdleWatch
113109
val methods: List<ExecutableId> = kryoHelper.readObject(params.methods)
114110
logger.debug().measureTime({ "starting generation for ${methods.size} methods, starting with ${methods.first()}" }) {
115111
val generateFlow = when (testGenerator.applicationContext) {
116-
is SpringApplicationContext -> defaultSpringFlow(params.generationTimeout)
112+
is SpringApplicationContext -> defaultSpringFlow(params)
117113
is ApplicationContext -> testFlow {
118114
generationTimeout = params.generationTimeout
119115
isSymbolicEngineEnabled = params.isSymbolicEngineEnabled

utbot-intellij/src/main/kotlin/org/utbot/intellij/plugin/generator/UtTestsDialogProcessor.kt

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -352,6 +352,10 @@ object UtTestsDialogProcessor {
352352
)
353353
}, 0, 500, TimeUnit.MILLISECONDS)
354354
try {
355+
val useFuzzing = when (model.projectType) {
356+
Spring -> model.typeReplacementApproach == DoNotReplace
357+
else -> UtSettings.useFuzzing
358+
}
355359
val rdGenerateResult = process.generate(
356360
model.conflictTriggers,
357361
methods,
@@ -360,7 +364,7 @@ object UtTestsDialogProcessor {
360364
model.timeout,
361365
model.timeout,
362366
true,
363-
UtSettings.useFuzzing,
367+
useFuzzing,
364368
project.service<Settings>().fuzzingValue,
365369
searchDirectory.pathString
366370
)

0 commit comments

Comments
 (0)