Closed
Description
Description
There is problem with negative size in Combinations. This is cause of crash UtBot.
To Reproduce
Run ContestEstimator on project antlr, class org.antlr.v4.parse.LeftRecursiveRuleWalker.
Expected behavior
Tests are supposed to be generated.
Actual behavior
ContestEstimator crashes with exception from fuzz function.
Visual proofs (screenshots, logs, images)
Exception in thread "SymbolicExecution" java.lang.IllegalStateException: Size must be positive or 0 but current value is -1810579852
at org.utbot.fuzzer.PseudoShuffledIntProgression.<init>(PseudoShuffledIntProgression.kt:95)
at org.utbot.fuzzer.PseudoShuffledIntProgression.<init>(PseudoShuffledIntProgression.kt:89)
at org.utbot.fuzzer.CartesianProduct.iterator(CartesianProduct.kt:18)
at org.utbot.fuzzer.CartesianProduct.asSequence(CartesianProduct.kt:13)
at org.utbot.fuzzer.FuzzerKt.fuzz(Fuzzer.kt:34)
at org.utbot.fuzzer.providers.ObjectModelProvider.generateModelsWithFieldsInitialization(ObjectModelProvider.kt:119)
at org.utbot.fuzzer.providers.ObjectModelProvider.access$generateModelsWithFieldsInitialization(ObjectModelProvider.kt:37)
at org.utbot.fuzzer.providers.ObjectModelProvider$generate$1.invokeSuspend(ObjectModelProvider.kt:90)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlin.sequences.SequenceBuilderIterator.hasNext(SequenceBuilder.kt:140)
at org.utbot.fuzzer.ModelProvider$Combined$generate$1.invokeSuspend(ModelProvider.kt:143)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlin.sequences.SequenceBuilderIterator.hasNext(SequenceBuilder.kt:140)
at org.utbot.fuzzer.FuzzerKt.fuzz(Fuzzer.kt:76)
at org.utbot.fuzzer.providers.ObjectModelProvider$Companion.fuzzParameters(ObjectModelProvider.kt:173)
at org.utbot.fuzzer.providers.ObjectModelProvider$Companion.access$fuzzParameters(ObjectModelProvider.kt:145)
at org.utbot.fuzzer.providers.ObjectModelProvider$generate$1.invokeSuspend(ObjectModelProvider.kt:82)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlin.sequences.SequenceBuilderIterator.hasNext(SequenceBuilder.kt:140)
at org.utbot.fuzzer.ModelProvider$withFallback$1$1.invokeSuspend(ModelProvider.kt:142)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlin.sequences.SequenceBuilderIterator.hasNext(SequenceBuilder.kt:140)
at kotlin.sequences.TakeSequence$iterator$1.hasNext(Sequences.kt:421)
at kotlin.sequences.SequencesKt___SequencesKt.toCollection(_Sequences.kt:752)
at kotlin.sequences.SequencesKt___SequencesKt.toMutableList(_Sequences.kt:782)
at kotlin.sequences.SequencesKt__SequencesKt$shuffled$1.invokeSuspend(Sequences.kt:140)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlin.sequences.SequenceBuilderIterator.hasNext(SequenceBuilder.kt:140)
at kotlin.sequences.TransformingSequence$iterator$1.hasNext(Sequences.kt:214)
at kotlin.sequences.SequencesKt___SequencesKt.first(_Sequences.kt:110)
at org.utbot.engine.UtBotSymbolicEngine$fuzzing$2.invokeSuspend(UtBotSymbolicEngine.kt:406)
at org.utbot.engine.UtBotSymbolicEngine$fuzzing$2.invoke(UtBotSymbolicEngine.kt)
...
Environment
Java 8.
Metadata
Metadata
Assignees
Type
Projects
Status
Done