René's URL Explorer Experiment


Title: TreeSet tests contain too much reflection with system classes · Issue #1282 · UnitTestBot/UTBotJava · GitHub

Open Graph Title: TreeSet tests contain too much reflection with system classes · Issue #1282 · UnitTestBot/UTBotJava

X Title: TreeSet tests contain too much reflection with system classes · Issue #1282 · UnitTestBot/UTBotJava

Description: Description Symbolic execution for examples using TreeSet produces tests with too complex reflection with system classes. To Reproduce Install the latest UnitTestBot plugin build from main in IntelliJ Idea 2022.2.3 (latest) Create a Grad...

Open Graph Description: Description Symbolic execution for examples using TreeSet produces tests with too complex reflection with system classes. To Reproduce Install the latest UnitTestBot plugin build from main in Intel...

X Description: Description Symbolic execution for examples using TreeSet produces tests with too complex reflection with system classes. To Reproduce Install the latest UnitTestBot plugin build from main in Intel...

Opengraph URL: https://github.com/UnitTestBot/UTBotJava/issues/1282

X: @github

direct link

Domain: github.com


Hey, it has json ld scripts:
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"TreeSet tests contain too much reflection with system classes","articleBody":"**Description**\r\n\r\nSymbolic execution for examples using TreeSet produces tests with too complex reflection with system classes.\r\n\r\n**To Reproduce**\r\n\r\n1. Install [the latest UnitTestBot plugin build from main](https://github.com/UnitTestBot/UTBotJava/actions/runs/3367468745) in IntelliJ Idea 2022.2.3 (latest)\r\n2. Create a Gradle project with JDK 11\r\n3. Add a Java class with the following method:\r\n\r\n```java\r\n    /**\r\n     * Should create TreeSet without any modifications as T extends Number is not Comparable\r\n     */\r\n    public \u003cT extends Number\u003e boolean testTreeSetWithoutComparable(NavigableSet\u003cT\u003e set) {\r\n        if (set.size() \u003e 5) {\r\n            return true;\r\n        }\r\n        return false;\r\n    }\r\n\r\n    /**\r\n     * Should create TreeSet with modifications as Integer is Comparable\r\n     */\r\n    public boolean testTreeSetWithComparable(NavigableSet\u003cInteger\u003e set) {\r\n        if (set.size() \u003e 5) {\r\n            return true;\r\n        }\r\n        return false;\r\n    }\r\n```\r\n\r\n4. Generate tests with Symbolic execution only (100%) and `Mock everything outside package`\r\n\r\n**Expected behavior**\r\n\r\nGenerated tests are supposed to instantiate objects regularly.\r\n\r\n**Actual behavior**\r\n\r\nGenerated tests contain too much reflection with system classes\r\n\r\n**Visual proofs (screenshots, logs, images)**\r\n\r\n~~~java\r\n    ///region Test suites for executable org.utbot.examples.collections.CollectionExample.testTreeSetWithComparable\r\n\r\n    ///region\r\n\r\n    @Test\r\n    public void testTestTreeSetWithComparable1() {\r\n        CollectionExample collectionExample = new CollectionExample();\r\n        \r\n        /* This test fails because method [org.utbot.examples.collections.CollectionExample.testTreeSetWithComparable] produces [java.lang.NullPointerException]\r\n            org.utbot.examples.collections.CollectionExample.testTreeSetWithComparable(CollectionExample.java:124) */\r\n        collectionExample.testTreeSetWithComparable(null);\r\n    }\r\n\r\n    @Test\r\n    public void testTestTreeSetWithComparable2() throws Exception {\r\n        CollectionExample collectionExample = new CollectionExample();\r\n        ConcurrentSkipListSet set = ((ConcurrentSkipListSet) createInstance(\"java.util.concurrent.ConcurrentSkipListSet\"));\r\n        ConcurrentSkipListMap concurrentSkipListMap = ((ConcurrentSkipListMap) createInstance(\"java.util.concurrent.ConcurrentSkipListMap\"));\r\n        Object index = createInstance(\"java.util.concurrent.ConcurrentSkipListMap$Index\");\r\n        Object node = createInstance(\"java.util.concurrent.ConcurrentSkipListMap$Node\");\r\n        setField(index, \"java.util.concurrent.ConcurrentSkipListMap$Index\", \"node\", node);\r\n        setField(concurrentSkipListMap, \"java.util.concurrent.ConcurrentSkipListMap\", \"head\", index);\r\n        LongAdder longAdder = ((LongAdder) createInstance(\"java.util.concurrent.atomic.LongAdder\"));\r\n        Object[] cellArray = createArray(\"java.util.concurrent.atomic.Striped64$Cell\", 32);\r\n        setField(longAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\", cellArray);\r\n        setField(longAdder, \"java.util.concurrent.atomic.Striped64\", \"base\", 0L);\r\n        setField(concurrentSkipListMap, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\", longAdder);\r\n        setField(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\", concurrentSkipListMap);\r\n\r\n        boolean actual = collectionExample.testTreeSetWithComparable(set);\r\n\r\n        assertFalse(actual);\r\n\r\n        ConcurrentNavigableMap setM = ((ConcurrentNavigableMap) getFieldValue(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\"));\r\n        LongAdder setMMAdder = ((LongAdder) getFieldValue(setM, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\"));\r\n        Object setMMAdderMAdderCells = getFieldValue(setMMAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\");\r\n        Object finalSetMAdderCells0 = get(setMMAdderMAdderCells, 0);\r\n        ConcurrentNavigableMap setM1 = ((ConcurrentNavigableMap) getFieldValue(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\"));\r\n        LongAdder setM1MAdder = ((LongAdder) getFieldValue(setM1, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\"));\r\n        Object setM1MAdderMAdderCells = getFieldValue(setM1MAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\");\r\n        Object finalSetMAdderCells1 = get(setM1MAdderMAdderCells, 1);\r\n        ConcurrentNavigableMap setM2 = ((ConcurrentNavigableMap) getFieldValue(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\"));\r\n        LongAdder setM2MAdder = ((LongAdder) getFieldValue(setM2, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\"));\r\n        Object setM2MAdderMAdderCells = getFieldValue(setM2MAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\");\r\n        Object finalSetMAdderCells2 = get(setM2MAdderMAdderCells, 2);\r\n        ConcurrentNavigableMap setM3 = ((ConcurrentNavigableMap) getFieldValue(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\"));\r\n        LongAdder setM3MAdder = ((LongAdder) getFieldValue(setM3, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\"));\r\n        Object setM3MAdderMAdderCells = getFieldValue(setM3MAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\");\r\n        Object finalSetMAdderCells3 = get(setM3MAdderMAdderCells, 3);\r\n        ConcurrentNavigableMap setM4 = ((ConcurrentNavigableMap) getFieldValue(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\"));\r\n        LongAdder setM4MAdder = ((LongAdder) getFieldValue(setM4, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\"));\r\n        Object setM4MAdderMAdderCells = getFieldValue(setM4MAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\");\r\n        Object finalSetMAdderCells4 = get(setM4MAdderMAdderCells, 4);\r\n        ConcurrentNavigableMap setM5 = ((ConcurrentNavigableMap) getFieldValue(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\"));\r\n        LongAdder setM5MAdder = ((LongAdder) getFieldValue(setM5, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\"));\r\n        Object setM5MAdderMAdderCells = getFieldValue(setM5MAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\");\r\n        Object finalSetMAdderCells5 = get(setM5MAdderMAdderCells, 5);\r\n        ConcurrentNavigableMap setM6 = ((ConcurrentNavigableMap) getFieldValue(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\"));\r\n        LongAdder setM6MAdder = ((LongAdder) getFieldValue(setM6, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\"));\r\n        Object setM6MAdderMAdderCells = getFieldValue(setM6MAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\");\r\n        Object finalSetMAdderCells6 = get(setM6MAdderMAdderCells, 6);\r\n        ConcurrentNavigableMap setM7 = ((ConcurrentNavigableMap) getFieldValue(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\"));\r\n        LongAdder setM7MAdder = ((LongAdder) getFieldValue(setM7, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\"));\r\n        Object setM7MAdderMAdderCells = getFieldValue(setM7MAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\");\r\n        Object finalSetMAdderCells7 = get(setM7MAdderMAdderCells, 7);\r\n        ConcurrentNavigableMap setM8 = ((ConcurrentNavigableMap) getFieldValue(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\"));\r\n        LongAdder setM8MAdder = ((LongAdder) getFieldValue(setM8, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\"));\r\n        Object setM8MAdderMAdderCells = getFieldValue(setM8MAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\");\r\n        Object finalSetMAdderCells8 = get(setM8MAdderMAdderCells, 8);\r\n        ConcurrentNavigableMap setM9 = ((ConcurrentNavigableMap) getFieldValue(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\"));\r\n        LongAdder setM9MAdder = ((LongAdder) getFieldValue(setM9, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\"));\r\n        Object setM9MAdderMAdderCells = getFieldValue(setM9MAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\");\r\n        Object finalSetMAdderCells9 = get(setM9MAdderMAdderCells, 9);\r\n        ConcurrentNavigableMap setM10 = ((ConcurrentNavigableMap) getFieldValue(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\"));\r\n        LongAdder setM10MAdder = ((LongAdder) getFieldValue(setM10, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\"));\r\n        Object setM10MAdderMAdderCells = getFieldValue(setM10MAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\");\r\n        Object finalSetMAdderCells10 = get(setM10MAdderMAdderCells, 10);\r\n        ConcurrentNavigableMap setM11 = ((ConcurrentNavigableMap) getFieldValue(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\"));\r\n        LongAdder setM11MAdder = ((LongAdder) getFieldValue(setM11, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\"));\r\n        Object setM11MAdderMAdderCells = getFieldValue(setM11MAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\");\r\n        Object finalSetMAdderCells11 = get(setM11MAdderMAdderCells, 11);\r\n        ConcurrentNavigableMap setM12 = ((ConcurrentNavigableMap) getFieldValue(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\"));\r\n        LongAdder setM12MAdder = ((LongAdder) getFieldValue(setM12, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\"));\r\n        Object setM12MAdderMAdderCells = getFieldValue(setM12MAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\");\r\n        Object finalSetMAdderCells12 = get(setM12MAdderMAdderCells, 12);\r\n        ConcurrentNavigableMap setM13 = ((ConcurrentNavigableMap) getFieldValue(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\"));\r\n        LongAdder setM13MAdder = ((LongAdder) getFieldValue(setM13, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\"));\r\n        Object setM13MAdderMAdderCells = getFieldValue(setM13MAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\");\r\n        Object finalSetMAdderCells13 = get(setM13MAdderMAdderCells, 13);\r\n        ConcurrentNavigableMap setM14 = ((ConcurrentNavigableMap) getFieldValue(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\"));\r\n        LongAdder setM14MAdder = ((LongAdder) getFieldValue(setM14, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\"));\r\n        Object setM14MAdderMAdderCells = getFieldValue(setM14MAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\");\r\n        Object finalSetMAdderCells14 = get(setM14MAdderMAdderCells, 14);\r\n        ConcurrentNavigableMap setM15 = ((ConcurrentNavigableMap) getFieldValue(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\"));\r\n        LongAdder setM15MAdder = ((LongAdder) getFieldValue(setM15, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\"));\r\n        Object setM15MAdderMAdderCells = getFieldValue(setM15MAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\");\r\n        Object finalSetMAdderCells15 = get(setM15MAdderMAdderCells, 15);\r\n        ConcurrentNavigableMap setM16 = ((ConcurrentNavigableMap) getFieldValue(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\"));\r\n        LongAdder setM16MAdder = ((LongAdder) getFieldValue(setM16, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\"));\r\n        Object setM16MAdderMAdderCells = getFieldValue(setM16MAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\");\r\n        Object finalSetMAdderCells16 = get(setM16MAdderMAdderCells, 16);\r\n        ConcurrentNavigableMap setM17 = ((ConcurrentNavigableMap) getFieldValue(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\"));\r\n        LongAdder setM17MAdder = ((LongAdder) getFieldValue(setM17, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\"));\r\n        Object setM17MAdderMAdderCells = getFieldValue(setM17MAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\");\r\n        Object finalSetMAdderCells17 = get(setM17MAdderMAdderCells, 17);\r\n        ConcurrentNavigableMap setM18 = ((ConcurrentNavigableMap) getFieldValue(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\"));\r\n        LongAdder setM18MAdder = ((LongAdder) getFieldValue(setM18, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\"));\r\n        Object setM18MAdderMAdderCells = getFieldValue(setM18MAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\");\r\n        Object finalSetMAdderCells18 = get(setM18MAdderMAdderCells, 18);\r\n        ConcurrentNavigableMap setM19 = ((ConcurrentNavigableMap) getFieldValue(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\"));\r\n        LongAdder setM19MAdder = ((LongAdder) getFieldValue(setM19, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\"));\r\n        Object setM19MAdderMAdderCells = getFieldValue(setM19MAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\");\r\n        Object finalSetMAdderCells19 = get(setM19MAdderMAdderCells, 19);\r\n        ConcurrentNavigableMap setM20 = ((ConcurrentNavigableMap) getFieldValue(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\"));\r\n        LongAdder setM20MAdder = ((LongAdder) getFieldValue(setM20, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\"));\r\n        Object setM20MAdderMAdderCells = getFieldValue(setM20MAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\");\r\n        Object finalSetMAdderCells20 = get(setM20MAdderMAdderCells, 20);\r\n        ConcurrentNavigableMap setM21 = ((ConcurrentNavigableMap) getFieldValue(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\"));\r\n        LongAdder setM21MAdder = ((LongAdder) getFieldValue(setM21, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\"));\r\n        Object setM21MAdderMAdderCells = getFieldValue(setM21MAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\");\r\n        Object finalSetMAdderCells21 = get(setM21MAdderMAdderCells, 21);\r\n        ConcurrentNavigableMap setM22 = ((ConcurrentNavigableMap) getFieldValue(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\"));\r\n        LongAdder setM22MAdder = ((LongAdder) getFieldValue(setM22, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\"));\r\n        Object setM22MAdderMAdderCells = getFieldValue(setM22MAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\");\r\n        Object finalSetMAdderCells22 = get(setM22MAdderMAdderCells, 22);\r\n        ConcurrentNavigableMap setM23 = ((ConcurrentNavigableMap) getFieldValue(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\"));\r\n        LongAdder setM23MAdder = ((LongAdder) getFieldValue(setM23, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\"));\r\n        Object setM23MAdderMAdderCells = getFieldValue(setM23MAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\");\r\n        Object finalSetMAdderCells23 = get(setM23MAdderMAdderCells, 23);\r\n        ConcurrentNavigableMap setM24 = ((ConcurrentNavigableMap) getFieldValue(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\"));\r\n        LongAdder setM24MAdder = ((LongAdder) getFieldValue(setM24, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\"));\r\n        Object setM24MAdderMAdderCells = getFieldValue(setM24MAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\");\r\n        Object finalSetMAdderCells24 = get(setM24MAdderMAdderCells, 24);\r\n        ConcurrentNavigableMap setM25 = ((ConcurrentNavigableMap) getFieldValue(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\"));\r\n        LongAdder setM25MAdder = ((LongAdder) getFieldValue(setM25, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\"));\r\n        Object setM25MAdderMAdderCells = getFieldValue(setM25MAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\");\r\n        Object finalSetMAdderCells25 = get(setM25MAdderMAdderCells, 25);\r\n        ConcurrentNavigableMap setM26 = ((ConcurrentNavigableMap) getFieldValue(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\"));\r\n        LongAdder setM26MAdder = ((LongAdder) getFieldValue(setM26, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\"));\r\n        Object setM26MAdderMAdderCells = getFieldValue(setM26MAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\");\r\n        Object finalSetMAdderCells26 = get(setM26MAdderMAdderCells, 26);\r\n        ConcurrentNavigableMap setM27 = ((ConcurrentNavigableMap) getFieldValue(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\"));\r\n        LongAdder setM27MAdder = ((LongAdder) getFieldValue(setM27, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\"));\r\n        Object setM27MAdderMAdderCells = getFieldValue(setM27MAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\");\r\n        Object finalSetMAdderCells27 = get(setM27MAdderMAdderCells, 27);\r\n        ConcurrentNavigableMap setM28 = ((ConcurrentNavigableMap) getFieldValue(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\"));\r\n        LongAdder setM28MAdder = ((LongAdder) getFieldValue(setM28, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\"));\r\n        Object setM28MAdderMAdderCells = getFieldValue(setM28MAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\");\r\n        Object finalSetMAdderCells28 = get(setM28MAdderMAdderCells, 28);\r\n        ConcurrentNavigableMap setM29 = ((ConcurrentNavigableMap) getFieldValue(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\"));\r\n        LongAdder setM29MAdder = ((LongAdder) getFieldValue(setM29, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\"));\r\n        Object setM29MAdderMAdderCells = getFieldValue(setM29MAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\");\r\n        Object finalSetMAdderCells29 = get(setM29MAdderMAdderCells, 29);\r\n        ConcurrentNavigableMap setM30 = ((ConcurrentNavigableMap) getFieldValue(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\"));\r\n        LongAdder setM30MAdder = ((LongAdder) getFieldValue(setM30, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\"));\r\n        Object setM30MAdderMAdderCells = getFieldValue(setM30MAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\");\r\n        Object finalSetMAdderCells30 = get(setM30MAdderMAdderCells, 30);\r\n        ConcurrentNavigableMap setM31 = ((ConcurrentNavigableMap) getFieldValue(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\"));\r\n        LongAdder setM31MAdder = ((LongAdder) getFieldValue(setM31, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\"));\r\n        Object setM31MAdderMAdderCells = getFieldValue(setM31MAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\");\r\n        Object finalSetMAdderCells31 = get(setM31MAdderMAdderCells, 31);\r\n\r\n        assertNull(finalSetMAdderCells0);\r\n\r\n        assertNull(finalSetMAdderCells1);\r\n\r\n        assertNull(finalSetMAdderCells2);\r\n\r\n        assertNull(finalSetMAdderCells3);\r\n\r\n        assertNull(finalSetMAdderCells4);\r\n\r\n        assertNull(finalSetMAdderCells5);\r\n\r\n        assertNull(finalSetMAdderCells6);\r\n\r\n        assertNull(finalSetMAdderCells7);\r\n\r\n        assertNull(finalSetMAdderCells8);\r\n\r\n        assertNull(finalSetMAdderCells9);\r\n\r\n        assertNull(finalSetMAdderCells10);\r\n\r\n        assertNull(finalSetMAdderCells11);\r\n\r\n        assertNull(finalSetMAdderCells12);\r\n\r\n        assertNull(finalSetMAdderCells13);\r\n\r\n        assertNull(finalSetMAdderCells14);\r\n\r\n        assertNull(finalSetMAdderCells15);\r\n\r\n        assertNull(finalSetMAdderCells16);\r\n\r\n        assertNull(finalSetMAdderCells17);\r\n\r\n        assertNull(finalSetMAdderCells18);\r\n\r\n        assertNull(finalSetMAdderCells19);\r\n\r\n        assertNull(finalSetMAdderCells20);\r\n\r\n        assertNull(finalSetMAdderCells21);\r\n\r\n        assertNull(finalSetMAdderCells22);\r\n\r\n        assertNull(finalSetMAdderCells23);\r\n\r\n        assertNull(finalSetMAdderCells24);\r\n\r\n        assertNull(finalSetMAdderCells25);\r\n\r\n        assertNull(finalSetMAdderCells26);\r\n\r\n        assertNull(finalSetMAdderCells27);\r\n\r\n        assertNull(finalSetMAdderCells28);\r\n\r\n        assertNull(finalSetMAdderCells29);\r\n\r\n        assertNull(finalSetMAdderCells30);\r\n\r\n        assertNull(finalSetMAdderCells31);\r\n    }\r\n    ///endregion\r\n\r\n    ///endregion\r\n\r\n    ///region Test suites for executable org.utbot.examples.collections.CollectionExample.testTreeSetWithoutComparable\r\n\r\n    ///region\r\n\r\n    @Test\r\n    public void testTestTreeSetWithoutComparable1() {\r\n        CollectionExample collectionExample = new CollectionExample();\r\n        \r\n        /* This test fails because method [org.utbot.examples.collections.CollectionExample.testTreeSetWithoutComparable] produces [java.lang.NullPointerException]\r\n            org.utbot.examples.collections.CollectionExample.testTreeSetWithoutComparable(CollectionExample.java:114) */\r\n        collectionExample.testTreeSetWithoutComparable(null);\r\n    }\r\n\r\n    @Test\r\n    public void testTestTreeSetWithoutComparable2() throws Exception {\r\n        CollectionExample collectionExample = new CollectionExample();\r\n        ConcurrentSkipListSet set = ((ConcurrentSkipListSet) createInstance(\"java.util.concurrent.ConcurrentSkipListSet\"));\r\n        ConcurrentSkipListMap concurrentSkipListMap = ((ConcurrentSkipListMap) createInstance(\"java.util.concurrent.ConcurrentSkipListMap\"));\r\n        Object index = createInstance(\"java.util.concurrent.ConcurrentSkipListMap$Index\");\r\n        Object node = createInstance(\"java.util.concurrent.ConcurrentSkipListMap$Node\");\r\n        setField(index, \"java.util.concurrent.ConcurrentSkipListMap$Index\", \"node\", node);\r\n        setField(concurrentSkipListMap, \"java.util.concurrent.ConcurrentSkipListMap\", \"head\", index);\r\n        LongAdder longAdder = ((LongAdder) createInstance(\"java.util.concurrent.atomic.LongAdder\"));\r\n        Object[] cellArray = createArray(\"java.util.concurrent.atomic.Striped64$Cell\", 2);\r\n        setField(longAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\", cellArray);\r\n        setField(longAdder, \"java.util.concurrent.atomic.Striped64\", \"base\", 0L);\r\n        setField(concurrentSkipListMap, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\", longAdder);\r\n        setField(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\", concurrentSkipListMap);\r\n\r\n        boolean actual = collectionExample.testTreeSetWithoutComparable(set);\r\n\r\n        assertFalse(actual);\r\n\r\n        ConcurrentNavigableMap setM = ((ConcurrentNavigableMap) getFieldValue(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\"));\r\n        LongAdder setMMAdder = ((LongAdder) getFieldValue(setM, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\"));\r\n        Object setMMAdderMAdderCells = getFieldValue(setMMAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\");\r\n        Object finalSetMAdderCells0 = get(setMMAdderMAdderCells, 0);\r\n        ConcurrentNavigableMap setM1 = ((ConcurrentNavigableMap) getFieldValue(set, \"java.util.concurrent.ConcurrentSkipListSet\", \"m\"));\r\n        LongAdder setM1MAdder = ((LongAdder) getFieldValue(setM1, \"java.util.concurrent.ConcurrentSkipListMap\", \"adder\"));\r\n        Object setM1MAdderMAdderCells = getFieldValue(setM1MAdder, \"java.util.concurrent.atomic.Striped64\", \"cells\");\r\n        Object finalSetMAdderCells1 = get(setM1MAdderMAdderCells, 1);\r\n\r\n        assertNull(finalSetMAdderCells0);\r\n\r\n        assertNull(finalSetMAdderCells1);\r\n    }\r\n    ///endregion\r\n\r\n    ///endregion\r\n~~~\r\n\r\n**Environment**\r\n\r\nWindows 10 Pro\r\nIntelliJ IDEA 2022.1.4 (JBR 11)\r\nUTBotJava project (Gradle , JDK 11)\r\n\r\n**Additional context**\r\n\r\nCode taken from PR - #988 \r\n","author":{"url":"https://github.com/alisevych","@type":"Person","name":"alisevych"},"datePublished":"2022-11-01T14:08:47.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":2},"url":"https://github.com/1282/UTBotJava/issues/1282"}

route-pattern/_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format)
route-controllervoltron_issues_fragments
route-actionissue_layout
fetch-noncev2:0638f378-7a27-6e06-23dd-faa2c8d1826b
current-catalog-service-hash81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114
request-idCDA0:6C968:27E79:35E2B:698E2737
html-safe-noncee189a462524fab4a8ced1bf634a9383110bb45413b023910c95669117edd673d
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJDREEwOjZDOTY4OjI3RTc5OjM1RTJCOjY5OEUyNzM3IiwidmlzaXRvcl9pZCI6IjYyMDg4Nzg4OTAzNjM3OTExNTkiLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ==
visitor-hmac525d0d92a135569043809d349034fd6064fb5135f236f351cb3b1de3b3c860bb
hovercard-subject-tagissue:1431494657
github-keyboard-shortcutsrepository,issues,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///voltron/issues_fragments/issue_layout
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/UnitTestBot/UTBotJava/1282/issue_layout
twitter:imagehttps://opengraph.githubassets.com/42caa9605ed5d5315cba9b6fa50dd6c9df5b62567eeb096408974e0cb1cbd697/UnitTestBot/UTBotJava/issues/1282
twitter:cardsummary_large_image
og:imagehttps://opengraph.githubassets.com/42caa9605ed5d5315cba9b6fa50dd6c9df5b62567eeb096408974e0cb1cbd697/UnitTestBot/UTBotJava/issues/1282
og:image:altDescription Symbolic execution for examples using TreeSet produces tests with too complex reflection with system classes. To Reproduce Install the latest UnitTestBot plugin build from main in Intel...
og:image:width1200
og:image:height600
og:site_nameGitHub
og:typeobject
og:author:usernamealisevych
hostnamegithub.com
expected-hostnamegithub.com
Nonea5632af64f7fed7bff1d6a428d1aca1b94fa7a48f760de2d39d9b1effdbf0082
turbo-cache-controlno-preview
go-importgithub.com/UnitTestBot/UTBotJava git https://github.com/UnitTestBot/UTBotJava.git
octolytics-dimension-user_id87413538
octolytics-dimension-user_loginUnitTestBot
octolytics-dimension-repository_id480810501
octolytics-dimension-repository_nwoUnitTestBot/UTBotJava
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id480810501
octolytics-dimension-repository_network_root_nwoUnitTestBot/UTBotJava
turbo-body-classeslogged-out env-production page-responsive
disable-turbofalse
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
release2f1e729d231ea1ea5a098d21f1491b75bea53631
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/UnitTestBot/UTBotJava/issues/1282#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2FUnitTestBot%2FUTBotJava%2Fissues%2F1282
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub SparkBuild and deploy intelligent appshttps://github.com/features/spark
GitHub ModelsManage and compare promptshttps://github.com/features/models
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
GitHub SponsorsFund open source developershttps://github.com/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/accelerator
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2FUnitTestBot%2FUTBotJava%2Fissues%2F1282
Sign up https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fvoltron%2Fissues_fragments%2Fissue_layout&source=header-repo&source_repo=UnitTestBot%2FUTBotJava
Reloadhttps://github.com/UnitTestBot/UTBotJava/issues/1282
Reloadhttps://github.com/UnitTestBot/UTBotJava/issues/1282
Reloadhttps://github.com/UnitTestBot/UTBotJava/issues/1282
UnitTestBot https://github.com/UnitTestBot
UTBotJavahttps://github.com/UnitTestBot/UTBotJava
Notifications https://github.com/login?return_to=%2FUnitTestBot%2FUTBotJava
Fork 45 https://github.com/login?return_to=%2FUnitTestBot%2FUTBotJava
Star 142 https://github.com/login?return_to=%2FUnitTestBot%2FUTBotJava
Code https://github.com/UnitTestBot/UTBotJava
Issues 386 https://github.com/UnitTestBot/UTBotJava/issues
Pull requests 33 https://github.com/UnitTestBot/UTBotJava/pulls
Discussions https://github.com/UnitTestBot/UTBotJava/discussions
Actions https://github.com/UnitTestBot/UTBotJava/actions
Projects 1 https://github.com/UnitTestBot/UTBotJava/projects
Wiki https://github.com/UnitTestBot/UTBotJava/wiki
Security 0 https://github.com/UnitTestBot/UTBotJava/security
Insights https://github.com/UnitTestBot/UTBotJava/pulse
Code https://github.com/UnitTestBot/UTBotJava
Issues https://github.com/UnitTestBot/UTBotJava/issues
Pull requests https://github.com/UnitTestBot/UTBotJava/pulls
Discussions https://github.com/UnitTestBot/UTBotJava/discussions
Actions https://github.com/UnitTestBot/UTBotJava/actions
Projects https://github.com/UnitTestBot/UTBotJava/projects
Wiki https://github.com/UnitTestBot/UTBotJava/wiki
Security https://github.com/UnitTestBot/UTBotJava/security
Insights https://github.com/UnitTestBot/UTBotJava/pulse
New issuehttps://github.com/login?return_to=https://github.com/UnitTestBot/UTBotJava/issues/1282
New issuehttps://github.com/login?return_to=https://github.com/UnitTestBot/UTBotJava/issues/1282
TreeSet tests contain too much reflection with system classeshttps://github.com/UnitTestBot/UTBotJava/issues/1282#top
https://github.com/CaelmBleidd
comp-symbolic-engineIssue is related to the symbolic execution enginehttps://github.com/UnitTestBot/UTBotJava/issues?q=state%3Aopen%20label%3A%22comp-symbolic-engine%22
ctg-bugIssue is a bughttps://github.com/UnitTestBot/UTBotJava/issues?q=state%3Aopen%20label%3A%22ctg-bug%22
https://github.com/alisevych
https://github.com/alisevych
alisevychhttps://github.com/alisevych
on Nov 1, 2022https://github.com/UnitTestBot/UTBotJava/issues/1282#issue-1431494657
the latest UnitTestBot plugin build from mainhttps://github.com/UnitTestBot/UTBotJava/actions/runs/3367468745
#988https://github.com/UnitTestBot/UTBotJava/pull/988
CaelmBleiddhttps://github.com/CaelmBleidd
comp-symbolic-engineIssue is related to the symbolic execution enginehttps://github.com/UnitTestBot/UTBotJava/issues?q=state%3Aopen%20label%3A%22comp-symbolic-engine%22
ctg-bugIssue is a bughttps://github.com/UnitTestBot/UTBotJava/issues?q=state%3Aopen%20label%3A%22ctg-bug%22
UTBot Javahttps://github.com/orgs/UnitTestBot/projects/2
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.