Consider the following class com.google.common.primitives.Booleans$LexicographicalComparator in guava-26.0:
private static enum LexicographicalComparator implements Comparator<boolean[]> { ... }
In tests for methods of this class in some specific conditions we generate the following code:
Class booleansLexicographicalComparatorTestClazz = Class.forName("com.google.common.primitives.Booleans_LexicographicalComparatorTest");
Class classType = Class.forName("java.lang.Class");
Class stringType = Class.forName("java.lang.String");
Method getStaticFieldValueMethod = booleansLexicographicalComparatorTestClazz.getDeclaredMethod("getStaticFieldValue", classType, stringType);
getStaticFieldValueMethod.setAccessible(true);
java.lang.Object[] getStaticFieldValueMethodArguments = new java.lang.Object[2];
getStaticFieldValueMethodArguments[0] = "com.google.common.primitives.Booleans$LexicographicalComparator";
getStaticFieldValueMethodArguments[1] = "INSTANCE";
Object lexicographicalComparator = getStaticFieldValueMethod.invoke(null, getStaticFieldValueMethodArguments);
Steps to reproduce:
- Checkout to
usvm_competitions_2024 branch, at least one reproducable commit 5503f43
- Use the following settings in
ContestEstimator:
val timeLimit = 120
methodFilter = "com.google.common.primitives.Booleans\$LexicographicalComparator.toString"
projectFilter = listOf("guava-26.0")
- Add the following line
com.google.common.primitives.Booleans$LexicographicalComparator to the utbot-junit-contest/src/main/resources/classes/guava-26.0/list
- Always use
symbolicResult and ignore concreteResult in org.utbot.contest.usvm.jc.JcTestExecutor#execute
Consider the following class
com.google.common.primitives.Booleans$LexicographicalComparatoringuava-26.0:In tests for methods of this class in some specific conditions we generate the following code:
Steps to reproduce:
usvm_competitions_2024branch, at least one reproducable commit 5503f43ContestEstimator:com.google.common.primitives.Booleans$LexicographicalComparatorto theutbot-junit-contest/src/main/resources/classes/guava-26.0/listsymbolicResultand ignoreconcreteResultinorg.utbot.contest.usvm.jc.JcTestExecutor#execute