Closed
Description
Description
When fuzzer fails to generate instances for the inner type, it throws an error instead of generating only empty list.
To Reproduce
Steps to reproduce the behavior (for Java plugin):
- Create a project in IntelliJ Idea with the following code:
public class Main {
interface Something {}
int func(List<Something> x) {
return x.size();
}
}
- In UTBot plugin settings leave only fuzzing as generation method.
- Use plugin to generate tests.
Expected behavior
Test with an empty list as input is supposed to be generated.
Actual behavior
No tests were generated.
Visual proofs (screenshots, logs, images)
Exception from logs:
java.lang.IllegalStateException: No seed candidates generated for type: FuzzedType(classId=com.company.Main$Something, generics=[])
at org.utbot.fuzzing.FuzzingApi.produce(Api.kt:350) ~[utbot-fuzzing-2023.01-SNAPSHOT.jar:?]
at org.utbot.fuzzing.FuzzingApi.fuzz(Api.kt:323) ~[utbot-fuzzing-2023.01-SNAPSHOT.jar:?]
at org.utbot.fuzzing.FuzzingApi.reduce(Api.kt:394) ~[utbot-fuzzing-2023.01-SNAPSHOT.jar:?]
at org.utbot.fuzzing.FuzzingApi.produce(Api.kt:346) ~[utbot-fuzzing-2023.01-SNAPSHOT.jar:?]
at org.utbot.fuzzing.FuzzingApi.fuzz(Api.kt:323) ~[utbot-fuzzing-2023.01-SNAPSHOT.jar:?]
at org.utbot.fuzzing.FuzzingApi.fuzz$fuzzOne(Api.kt:250) ~[utbot-fuzzing-2023.01-SNAPSHOT.jar:?]
at org.utbot.fuzzing.FuzzingApi.access$fuzz$fuzzOne(Api.kt:1) ~[utbot-fuzzing-2023.01-SNAPSHOT.jar:?]
at org.utbot.fuzzing.FuzzingApi$fuzz$2$1.invokeSuspend(Api.kt:267) ~[utbot-fuzzing-2023.01-SNAPSHOT.jar:?]
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) ~[utbot-instrumentation-2023.01-SNAPSHOT.jar:?]
at kotlin.sequences.SequenceBuilderIterator.hasNext(SequenceBuilder.kt:129) ~[utbot-instrumentation-2023.01-SNAPSHOT.jar:?]
at org.utbot.fuzzing.FuzzingApi.fuzz(Api.kt:660) ~[utbot-fuzzing-2023.01-SNAPSHOT.jar:?]
at org.utbot.fuzzing.ProvidersKt.runFuzzing(Providers.kt:18) ~[utbot-fuzzing-2023.01-SNAPSHOT.jar:?]
at org.utbot.fuzzing.ProvidersKt.runFuzzing$default(Providers.kt:11) ~[utbot-fuzzing-2023.01-SNAPSHOT.jar:?]
at org.utbot.fuzzing.JavaLanguageKt.runJavaFuzzing(JavaLanguage.kt:114) [utbot-fuzzers-2023.01-SNAPSHOT.jar:?]
at org.utbot.engine.UtBotSymbolicEngine$fuzzing$2.invokeSuspend(UtBotSymbolicEngine.kt:349) [utbot-framework-2023.01-SNAPSHOT.jar:?]
at org.utbot.engine.UtBotSymbolicEngine$fuzzing$2.invoke(UtBotSymbolicEngine.kt) [utbot-framework-2023.01-SNAPSHOT.jar:?]
at org.utbot.engine.UtBotSymbolicEngine$fuzzing$2.invoke(UtBotSymbolicEngine.kt) [utbot-framework-2023.01-SNAPSHOT.jar:?]
at kotlinx.coroutines.flow.SafeFlow.collectSafely(Builders.kt:61) [utbot-instrumentation-2023.01-SNAPSHOT.jar:?]
at kotlinx.coroutines.flow.AbstractFlow.collect(Flow.kt:230) [utbot-instrumentation-2023.01-SNAPSHOT.jar:?]
at kotlinx.coroutines.flow.FlowKt__ErrorsKt.catchImpl(Errors.kt:156) [utbot-instrumentation-2023.01-SNAPSHOT.jar:?]
at kotlinx.coroutines.flow.FlowKt.catchImpl(Unknown Source) [utbot-instrumentation-2023.01-SNAPSHOT.jar:?]
at kotlinx.coroutines.flow.FlowKt__ErrorsKt$catch$$inlined$unsafeFlow$1.collect(SafeCollector.common.kt:113) [utbot-instrumentation-2023.01-SNAPSHOT.jar:?]
at org.utbot.framework.plugin.api.TestCaseGenerator$generate$3$1$1.invokeSuspend(TestCaseGenerator.kt:172) [utbot-framework-2023.01-SNAPSHOT.jar:?]
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) [utbot-instrumentation-2023.01-SNAPSHOT.jar:?]
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106) [utbot-instrumentation-2023.01-SNAPSHOT.jar:?]
at kotlinx.coroutines.EventLoopImplBase.processNextEvent(EventLoop.common.kt:284) [utbot-instrumentation-2023.01-SNAPSHOT.jar:?]
at kotlinx.coroutines.BlockingCoroutine.joinBlocking(Builders.kt:85) [utbot-instrumentation-2023.01-SNAPSHOT.jar:?]
at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking(Builders.kt:59) [utbot-instrumentation-2023.01-SNAPSHOT.jar:?]
at kotlinx.coroutines.BuildersKt.runBlocking(Unknown Source) [utbot-instrumentation-2023.01-SNAPSHOT.jar:?]
at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking$default(Builders.kt:38) [utbot-instrumentation-2023.01-SNAPSHOT.jar:?]
at kotlinx.coroutines.BuildersKt.runBlocking$default(Unknown Source) [utbot-instrumentation-2023.01-SNAPSHOT.jar:?]
at org.utbot.common.ConcurrencyKt.runBlockingWithCancellationPredicate(Concurrency.kt:38) [utbot-core-2023.01-SNAPSHOT.jar:?]
at org.utbot.framework.plugin.api.TestCaseGenerator$generate$3.invoke(TestCaseGenerator.kt:148) [utbot-framework-2023.01-SNAPSHOT.jar:?]
at org.utbot.framework.plugin.api.TestCaseGenerator$generate$3.invoke(TestCaseGenerator.kt:147) [utbot-framework-2023.01-SNAPSHOT.jar:?]
at org.utbot.common.ConcurrencyKt.runIgnoringCancellationException(Concurrency.kt:47) [utbot-core-2023.01-SNAPSHOT.jar:?]
at org.utbot.framework.plugin.api.TestCaseGenerator.generate(TestCaseGenerator.kt:147) [utbot-framework-2023.01-SNAPSHOT.jar:?]
at org.utbot.framework.process.EngineProcessMainKt$setup$3.invoke(EngineProcessMain.kt:105) [utbot-framework-2023.01-SNAPSHOT.jar:?]
at org.utbot.framework.process.EngineProcessMainKt$setup$3.invoke(EngineProcessMain.kt:95) [utbot-framework-2023.01-SNAPSHOT.jar:?]
at org.utbot.rd.IdleWatchdog$wrapActiveCall$1$1.invoke(ClientProcessUtil.kt:96) [utbot-rd-2023.01-SNAPSHOT.jar:?]
at org.utbot.rd.IdleWatchdog.wrapActive(ClientProcessUtil.kt:83) [utbot-rd-2023.01-SNAPSHOT.jar:?]
at org.utbot.rd.IdleWatchdog$wrapActiveCall$1.invoke(ClientProcessUtil.kt:95) [utbot-rd-2023.01-SNAPSHOT.jar:?]
at com.jetbrains.rd.framework.IRdEndpoint$set$1.invoke(TaskInterfaces.kt:182) [utbot-instrumentation-2023.01-SNAPSHOT.jar:?]
at com.jetbrains.rd.framework.IRdEndpoint$set$1.invoke(TaskInterfaces.kt:173) [utbot-instrumentation-2023.01-SNAPSHOT.jar:?]
at com.jetbrains.rd.framework.impl.RdCall.onWireReceived(RdTask.kt:360) [utbot-instrumentation-2023.01-SNAPSHOT.jar:?]
at com.jetbrains.rd.framework.MessageBroker$invoke$2$2.invoke(MessageBroker.kt:57) [utbot-instrumentation-2023.01-SNAPSHOT.jar:?]
at com.jetbrains.rd.framework.MessageBroker$invoke$2$2.invoke(MessageBroker.kt:12) [utbot-instrumentation-2023.01-SNAPSHOT.jar:?]
at com.jetbrains.rd.framework.impl.ProtocolContexts.readMessageContextAndInvoke(ProtocolContexts.kt:151) [utbot-instrumentation-2023.01-SNAPSHOT.jar:?]
at com.jetbrains.rd.framework.MessageBroker$invoke$2.invoke(MessageBroker.kt:56) [utbot-instrumentation-2023.01-SNAPSHOT.jar:?]
at com.jetbrains.rd.framework.MessageBroker$invoke$2.invoke(MessageBroker.kt:12) [utbot-instrumentation-2023.01-SNAPSHOT.jar:?]
at com.jetbrains.rd.util.threading.SingleThreadSchedulerBase$queue$1.run(SingleThreadScheduler.kt:41) [utbot-instrumentation-2023.01-SNAPSHOT.jar:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_352]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_352]
at java.lang.Thread.run(Thread.java:750) [?:1.8.0_352]
Metadata
Metadata
Assignees
Type
Projects
Status
Done