[ 
https://issues.apache.org/jira/browse/COLLECTIONS-861?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Daniele updated COLLECTIONS-861:
--------------------------------
    Description: 
*CollectionUtils.select(Iterable, Predicate, Collection, Collection):*

A ConcurrentModificationException can be thrown, but not signed in the 
specification, also "return the outputCollection" is ambiguous because 
outputCollection is a parameter and it seems like the method should return that 
parameter as it is, but in is modified inside the method.

*Test used (generated by EvoSuite):*
{code:java}
/*  * This file was automatically generated by EvoSuite  * Sun May 05 21:09:14 
GMT 2024  */ package org.apache.commons.collections4;import org.junit.Test; 
import static org.junit.Assert.*; import static 
shaded.org.evosuite.shaded.org.mockito.Mockito.*; import static 
shaded.org.evosuite.runtime.EvoAssertions.*; import java.util.Collection; 
import java.util.Comparator; import java.util.ConcurrentModificationException; 
import java.util.LinkedList; import java.util.PriorityQueue; import 
org.apache.commons.collections4.CollectionUtils; import 
org.apache.commons.collections4.Predicate; import 
org.apache.commons.collections4.functors.UniquePredicate; import 
org.junit.runner.RunWith; import shaded.org.evosuite.runtime.EvoRunner; import 
shaded.org.evosuite.runtime.EvoRunnerParameters; import 
shaded.org.evosuite.runtime.ViolatedAssumptionAnswer;@RunWith(EvoRunner.class) 
@EvoRunnerParameters(mockJVMNonDeterminism = true, useVNET = true, 
separateClassLoader = true) public class CollectionUtils_12_failure_Test 
extends CollectionUtils_12_failure_Test_scaffolding {    
@Test(timeout = 4000)     public void testSelect_OutputCollection() throws 
Throwable {         Comparator<? super Object> comparator0 = (Comparator<? 
super Object>) mock(Comparator.class, new ViolatedAssumptionAnswer());         
doReturn(89).when(comparator0).compare(any(), any());         
PriorityQueue<Object> priorityQueue0 = new PriorityQueue<Object>(comparator0);  
       LinkedList<Object> linkedList0 = new LinkedList<Object>();         
boolean boolean0 = priorityQueue0.add(linkedList0);         
UniquePredicate<Object> uniquePredicate0 = new UniquePredicate<Object>();       
try {                          
org.junit.Assume.assumeTrue(true);                          
org.junit.Assume.assumeTrue((((Iterable<?>) priorityQueue0) == null) == false 
&& (((Predicate<? super Object>) uniquePredicate0) == null) == false || 
(((Collection<Object>) priorityQueue0) == null) == false);                      
    org.junit.Assume.assumeTrue((((Iterable<?>) priorityQueue0) == null) == 
false || (((Predicate<? super Object>) uniquePredicate0) == null) == false || 
(((Collection<Object>) priorityQueue0) == null) == false);                      
    
java.util.Collection<?>             
_methodResult__ = CollectionUtils.select((Iterable<?>) priorityQueue0, 
(Predicate<? super Object>) uniquePredicate0, (Collection<Object>) 
priorityQueue0, (Collection<Object>) priorityQueue0);             //** 
Postcondition on which the oracle of method select depends: 
methodResultID.equals(args[2])             
org.junit.Assert.assertTrue(_methodResult__.equals(((Collection<Object>) 
priorityQueue0)));         } catch (ConcurrentModificationException e) {        
     //             // no message in exception (getMessage() returned null)     
        //             verifyException("java.util.PriorityQueue$Itr", e);       
      org.junit.Assert.fail();         }         if (true)             throw 
new RuntimeException("Failure-driven test case completed without pinpointing 
any failure. This should not happen. Please check");     } } {code}
*CollectionUtils.selectRejected(Iterable, Predicate, Collection):*

A RuntimeException can be thrown, but not signed in the specification, also 
"return  outputCollection" is ambiguous because outputCollection is a parameter 
and it seems like the method should return that parameter as it is, but in is 
modified inside the method.

*Test used (generated by EvoSuite):*
{code:java}
/* * This file was automatically generated by EvoSuite * Sun May 05 21:09:36 
GMT 2024 */package org.apache.commons.collections4;
import org.junit.Test;import static org.junit.Assert.*;import static 
shaded.org.evosuite.shaded.org.mockito.Mockito.*;import static 
shaded.org.evosuite.runtime.EvoAssertions.*;import java.util.Collection;import 
java.util.LinkedList;import java.util.Vector;import 
org.apache.commons.collections4.CollectionUtils;import 
org.apache.commons.collections4.Predicate;import 
org.apache.commons.collections4.functors.ExceptionPredicate;import 
org.apache.commons.collections4.functors.NullIsExceptionPredicate;import 
org.junit.runner.RunWith;import shaded.org.evosuite.runtime.EvoRunner;import 
shaded.org.evosuite.runtime.EvoRunnerParameters;import 
shaded.org.evosuite.runtime.ViolatedAssumptionAnswer;
@RunWith(EvoRunner.class)@EvoRunnerParameters(mockJVMNonDeterminism = true, 
useVNET = true, separateClassLoader = true)public class 
CollectionUtils_14_failure_Test extends 
CollectionUtils_14_failure_Test_scaffolding {
    //Covered goal: 
org.apache.commons.collections4.CollectionUtils.selectRejected(Ljava/lang/Iterable;Lorg/apache/commons/collections4/Predicate;Ljava/util/Collection;)Ljava/util/Collection;:
 true ---> methodResultID.equals(args[2]) -- path condition 
org.apache.commons.collections4.EvoSuiteEvaluator_14_failure (id = 7)    
@Test(timeout = 4000)    public void testSelectRejected_OutputCollection() 
throws Throwable {        Predicate<Object> predicate0 = 
ExceptionPredicate.exceptionPredicate();        
NullIsExceptionPredicate<Object> nullIsExceptionPredicate0 = new 
NullIsExceptionPredicate<Object>(predicate0);        LinkedList<Object> 
linkedList0 = new LinkedList<Object>();        Vector<Comparable<Object>> 
vector0 = new Vector<Comparable<Object>>(6935, 6935);        Comparable<Object> 
comparable0 = (Comparable<Object>) mock(Comparable.class, new 
ViolatedAssumptionAnswer());        boolean boolean0 = 
vector0.add(comparable0);        // Undeclared exception!        try {          
  //** Guard on which the oracle of method selectRejected depends: true         
   org.junit.Assume.assumeTrue(true);            //** Precondition on which 
method selectRejected depends: (args[2]==null) == false            
org.junit.Assume.assumeTrue((((Collection<Object>) linkedList0) == null) == 
false);            //** Automatically generated test oracle is: 
outputCollection., with guard: { description: outputCollection., conditionText: 
true }            java.util.Collection<?> //** Automatically generated test 
oracle is: outputCollection., with guard: { description: outputCollection., 
conditionText: true }            _methodResult__ = 
CollectionUtils.selectRejected((Iterable<? extends Comparable<Object>>) 
vector0, (Predicate<? super Comparable<Object>>) nullIsExceptionPredicate0, 
(Collection<Object>) linkedList0);            //** Postcondition on which the 
oracle of method selectRejected depends: methodResultID.equals(args[2])         
   org.junit.Assert.assertTrue(_methodResult__.equals(((Collection<Object>) 
linkedList0)));        } catch (RuntimeException e) {            //            
// ExceptionPredicate invoked            //            
verifyException("org.apache.commons.collections4.functors.ExceptionPredicate", 
e);            org.junit.Assert.fail();        }        if (true)            
throw new RuntimeException("Failure-driven test case completed without 
pinpointing any failure. This should not happen. Please check");    }} {code}
 

  was:
*CollectionUtils.select(Iterable, Predicate, Collection, Collection):*

A ConcurrentModificationException can be thrown, but not signed in the 
specification, also "return the outputCollection" is ambiguous because 
outputCollection is a parameter and it seems like the method should return that 
parameter as it is, but in is modified inside the method.

*Test used (generated by EvoSuite):*
{code:java}
/*  * This file was automatically generated by EvoSuite  * Sun May 05 21:09:14 
GMT 2024  */ package org.apache.commons.collections4;import org.junit.Test; 
import static org.junit.Assert.*; import static 
shaded.org.evosuite.shaded.org.mockito.Mockito.*; import static 
shaded.org.evosuite.runtime.EvoAssertions.*; import java.util.Collection; 
import java.util.Comparator; import java.util.ConcurrentModificationException; 
import java.util.LinkedList; import java.util.PriorityQueue; import 
org.apache.commons.collections4.CollectionUtils; import 
org.apache.commons.collections4.Predicate; import 
org.apache.commons.collections4.functors.UniquePredicate; import 
org.junit.runner.RunWith; import shaded.org.evosuite.runtime.EvoRunner; import 
shaded.org.evosuite.runtime.EvoRunnerParameters; import 
shaded.org.evosuite.runtime.ViolatedAssumptionAnswer;@RunWith(EvoRunner.class) 
@EvoRunnerParameters(mockJVMNonDeterminism = true, useVNET = true, 
separateClassLoader = true) public class CollectionUtils_12_failure_Test 
extends CollectionUtils_12_failure_Test_scaffolding {    
@Test(timeout = 4000)     public void testSelect_OutputCollection() throws 
Throwable {         Comparator<? super Object> comparator0 = (Comparator<? 
super Object>) mock(Comparator.class, new ViolatedAssumptionAnswer());         
doReturn(89).when(comparator0).compare(any(), any());         
PriorityQueue<Object> priorityQueue0 = new PriorityQueue<Object>(comparator0);  
       LinkedList<Object> linkedList0 = new LinkedList<Object>();         
boolean boolean0 = priorityQueue0.add(linkedList0);         
UniquePredicate<Object> uniquePredicate0 = new UniquePredicate<Object>();       
try {             //** Guard on which the oracle of method select depends: true 
            org.junit.Assume.assumeTrue(true);             //** Precondition on 
which method select depends: (args[0]==null) == false && (args[1]==null) == 
false || (args[2]==null) == false             
org.junit.Assume.assumeTrue((((Iterable<?>) priorityQueue0) == null) == false 
&& (((Predicate<? super Object>) uniquePredicate0) == null) == false || 
(((Collection<Object>) priorityQueue0) == null) == false);             //** 
Precondition on which method select depends: (args[0]==null) == false || 
(args[1]==null) == false || (args[3]==null) == false             
org.junit.Assume.assumeTrue((((Iterable<?>) priorityQueue0) == null) == false 
|| (((Predicate<? super Object>) uniquePredicate0) == null) == false || 
(((Collection<Object>) priorityQueue0) == null) == false);             //** 
Automatically generated test oracle is: the outputCollection., with guard: { 
description: the outputCollection., conditionText: true }             
java.util.Collection<?> //** Automatically generated test oracle is: the 
outputCollection., with guard: { description: the outputCollection., 
conditionText: true }             _methodResult__ = 
CollectionUtils.select((Iterable<?>) priorityQueue0, (Predicate<? super 
Object>) uniquePredicate0, (Collection<Object>) priorityQueue0, 
(Collection<Object>) priorityQueue0);             //** Postcondition on which 
the oracle of method select depends: methodResultID.equals(args[2])             
org.junit.Assert.assertTrue(_methodResult__.equals(((Collection<Object>) 
priorityQueue0)));         } catch (ConcurrentModificationException e) {        
     //             // no message in exception (getMessage() returned null)     
        //             verifyException("java.util.PriorityQueue$Itr", e);       
      org.junit.Assert.fail();         }         if (true)             throw 
new RuntimeException("Failure-driven test case completed without pinpointing 
any failure. This should not happen. Please check");     } } {code}
*CollectionUtils.selectRejected(Iterable, Predicate, Collection):*

A RuntimeException can be thrown, but not signed in the specification, also 
"return  outputCollection" is ambiguous because outputCollection is a parameter 
and it seems like the method should return that parameter as it is, but in is 
modified inside the method.

*Test used (generated by EvoSuite):*
{code:java}
/* * This file was automatically generated by EvoSuite * Sun May 05 21:09:36 
GMT 2024 */package org.apache.commons.collections4;
import org.junit.Test;import static org.junit.Assert.*;import static 
shaded.org.evosuite.shaded.org.mockito.Mockito.*;import static 
shaded.org.evosuite.runtime.EvoAssertions.*;import java.util.Collection;import 
java.util.LinkedList;import java.util.Vector;import 
org.apache.commons.collections4.CollectionUtils;import 
org.apache.commons.collections4.Predicate;import 
org.apache.commons.collections4.functors.ExceptionPredicate;import 
org.apache.commons.collections4.functors.NullIsExceptionPredicate;import 
org.junit.runner.RunWith;import shaded.org.evosuite.runtime.EvoRunner;import 
shaded.org.evosuite.runtime.EvoRunnerParameters;import 
shaded.org.evosuite.runtime.ViolatedAssumptionAnswer;
@RunWith(EvoRunner.class)@EvoRunnerParameters(mockJVMNonDeterminism = true, 
useVNET = true, separateClassLoader = true)public class 
CollectionUtils_14_failure_Test extends 
CollectionUtils_14_failure_Test_scaffolding {
    //Covered goal: 
org.apache.commons.collections4.CollectionUtils.selectRejected(Ljava/lang/Iterable;Lorg/apache/commons/collections4/Predicate;Ljava/util/Collection;)Ljava/util/Collection;:
 true ---> methodResultID.equals(args[2]) -- path condition 
org.apache.commons.collections4.EvoSuiteEvaluator_14_failure (id = 7)    
@Test(timeout = 4000)    public void testSelectRejected_OutputCollection() 
throws Throwable {        Predicate<Object> predicate0 = 
ExceptionPredicate.exceptionPredicate();        
NullIsExceptionPredicate<Object> nullIsExceptionPredicate0 = new 
NullIsExceptionPredicate<Object>(predicate0);        LinkedList<Object> 
linkedList0 = new LinkedList<Object>();        Vector<Comparable<Object>> 
vector0 = new Vector<Comparable<Object>>(6935, 6935);        Comparable<Object> 
comparable0 = (Comparable<Object>) mock(Comparable.class, new 
ViolatedAssumptionAnswer());        boolean boolean0 = 
vector0.add(comparable0);        // Undeclared exception!        try {          
  //** Guard on which the oracle of method selectRejected depends: true         
   org.junit.Assume.assumeTrue(true);            //** Precondition on which 
method selectRejected depends: (args[2]==null) == false            
org.junit.Assume.assumeTrue((((Collection<Object>) linkedList0) == null) == 
false);            //** Automatically generated test oracle is: 
outputCollection., with guard: { description: outputCollection., conditionText: 
true }            java.util.Collection<?> //** Automatically generated test 
oracle is: outputCollection., with guard: { description: outputCollection., 
conditionText: true }            _methodResult__ = 
CollectionUtils.selectRejected((Iterable<? extends Comparable<Object>>) 
vector0, (Predicate<? super Comparable<Object>>) nullIsExceptionPredicate0, 
(Collection<Object>) linkedList0);            //** Postcondition on which the 
oracle of method selectRejected depends: methodResultID.equals(args[2])         
   org.junit.Assert.assertTrue(_methodResult__.equals(((Collection<Object>) 
linkedList0)));        } catch (RuntimeException e) {            //            
// ExceptionPredicate invoked            //            
verifyException("org.apache.commons.collections4.functors.ExceptionPredicate", 
e);            org.junit.Assert.fail();        }        if (true)            
throw new RuntimeException("Failure-driven test case completed without 
pinpointing any failure. This should not happen. Please check");    }} {code}
 


> Documentation Bug: CollectionUtils.select(Iterable, Predicate, Collection, 
> Collection), CollectionUtils.selectRejected(Iterable, Predicate, Collection)
> -------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: COLLECTIONS-861
>                 URL: https://issues.apache.org/jira/browse/COLLECTIONS-861
>             Project: Commons Collections
>          Issue Type: Bug
>            Reporter: Daniele
>            Priority: Minor
>
> *CollectionUtils.select(Iterable, Predicate, Collection, Collection):*
> A ConcurrentModificationException can be thrown, but not signed in the 
> specification, also "return the outputCollection" is ambiguous because 
> outputCollection is a parameter and it seems like the method should return 
> that parameter as it is, but in is modified inside the method.
> *Test used (generated by EvoSuite):*
> {code:java}
> /*  * This file was automatically generated by EvoSuite  * Sun May 05 
> 21:09:14 GMT 2024  */ package org.apache.commons.collections4;import 
> org.junit.Test; import static org.junit.Assert.*; import static 
> shaded.org.evosuite.shaded.org.mockito.Mockito.*; import static 
> shaded.org.evosuite.runtime.EvoAssertions.*; import java.util.Collection; 
> import java.util.Comparator; import 
> java.util.ConcurrentModificationException; import java.util.LinkedList; 
> import java.util.PriorityQueue; import 
> org.apache.commons.collections4.CollectionUtils; import 
> org.apache.commons.collections4.Predicate; import 
> org.apache.commons.collections4.functors.UniquePredicate; import 
> org.junit.runner.RunWith; import shaded.org.evosuite.runtime.EvoRunner; 
> import shaded.org.evosuite.runtime.EvoRunnerParameters; import 
> shaded.org.evosuite.runtime.ViolatedAssumptionAnswer;@RunWith(EvoRunner.class)
>  @EvoRunnerParameters(mockJVMNonDeterminism = true, useVNET = true, 
> separateClassLoader = true) public class CollectionUtils_12_failure_Test 
> extends CollectionUtils_12_failure_Test_scaffolding {    
> @Test(timeout = 4000)     public void testSelect_OutputCollection() throws 
> Throwable {         Comparator<? super Object> comparator0 = (Comparator<? 
> super Object>) mock(Comparator.class, new ViolatedAssumptionAnswer());        
>  doReturn(89).when(comparator0).compare(any(), any());         
> PriorityQueue<Object> priorityQueue0 = new 
> PriorityQueue<Object>(comparator0);         LinkedList<Object> linkedList0 = 
> new LinkedList<Object>();         boolean boolean0 = 
> priorityQueue0.add(linkedList0);         UniquePredicate<Object> 
> uniquePredicate0 = new UniquePredicate<Object>();       
> try {                          
> org.junit.Assume.assumeTrue(true);                          
> org.junit.Assume.assumeTrue((((Iterable<?>) priorityQueue0) == null) == false 
> && (((Predicate<? super Object>) uniquePredicate0) == null) == false || 
> (((Collection<Object>) priorityQueue0) == null) == false);                    
>       org.junit.Assume.assumeTrue((((Iterable<?>) priorityQueue0) == null) == 
> false || (((Predicate<? super Object>) uniquePredicate0) == null) == false || 
> (((Collection<Object>) priorityQueue0) == null) == false);                    
>       
> java.util.Collection<?>             
> _methodResult__ = CollectionUtils.select((Iterable<?>) priorityQueue0, 
> (Predicate<? super Object>) uniquePredicate0, (Collection<Object>) 
> priorityQueue0, (Collection<Object>) priorityQueue0);             //** 
> Postcondition on which the oracle of method select depends: 
> methodResultID.equals(args[2])             
> org.junit.Assert.assertTrue(_methodResult__.equals(((Collection<Object>) 
> priorityQueue0)));         } catch (ConcurrentModificationException e) {      
>        //             // no message in exception (getMessage() returned null) 
>             //             verifyException("java.util.PriorityQueue$Itr", e); 
>             org.junit.Assert.fail();         }         if (true)             
> throw new RuntimeException("Failure-driven test case completed without 
> pinpointing any failure. This should not happen. Please check");     } } 
> {code}
> *CollectionUtils.selectRejected(Iterable, Predicate, Collection):*
> A RuntimeException can be thrown, but not signed in the specification, also 
> "return  outputCollection" is ambiguous because outputCollection is a 
> parameter and it seems like the method should return that parameter as it is, 
> but in is modified inside the method.
> *Test used (generated by EvoSuite):*
> {code:java}
> /* * This file was automatically generated by EvoSuite * Sun May 05 21:09:36 
> GMT 2024 */package org.apache.commons.collections4;
> import org.junit.Test;import static org.junit.Assert.*;import static 
> shaded.org.evosuite.shaded.org.mockito.Mockito.*;import static 
> shaded.org.evosuite.runtime.EvoAssertions.*;import 
> java.util.Collection;import java.util.LinkedList;import 
> java.util.Vector;import 
> org.apache.commons.collections4.CollectionUtils;import 
> org.apache.commons.collections4.Predicate;import 
> org.apache.commons.collections4.functors.ExceptionPredicate;import 
> org.apache.commons.collections4.functors.NullIsExceptionPredicate;import 
> org.junit.runner.RunWith;import shaded.org.evosuite.runtime.EvoRunner;import 
> shaded.org.evosuite.runtime.EvoRunnerParameters;import 
> shaded.org.evosuite.runtime.ViolatedAssumptionAnswer;
> @RunWith(EvoRunner.class)@EvoRunnerParameters(mockJVMNonDeterminism = true, 
> useVNET = true, separateClassLoader = true)public class 
> CollectionUtils_14_failure_Test extends 
> CollectionUtils_14_failure_Test_scaffolding {
>     //Covered goal: 
> org.apache.commons.collections4.CollectionUtils.selectRejected(Ljava/lang/Iterable;Lorg/apache/commons/collections4/Predicate;Ljava/util/Collection;)Ljava/util/Collection;:
>  true ---> methodResultID.equals(args[2]) -- path condition 
> org.apache.commons.collections4.EvoSuiteEvaluator_14_failure (id = 7)    
> @Test(timeout = 4000)    public void testSelectRejected_OutputCollection() 
> throws Throwable {        Predicate<Object> predicate0 = 
> ExceptionPredicate.exceptionPredicate();        
> NullIsExceptionPredicate<Object> nullIsExceptionPredicate0 = new 
> NullIsExceptionPredicate<Object>(predicate0);        LinkedList<Object> 
> linkedList0 = new LinkedList<Object>();        Vector<Comparable<Object>> 
> vector0 = new Vector<Comparable<Object>>(6935, 6935);        
> Comparable<Object> comparable0 = (Comparable<Object>) mock(Comparable.class, 
> new ViolatedAssumptionAnswer());        boolean boolean0 = 
> vector0.add(comparable0);        // Undeclared exception!        try {        
>     //** Guard on which the oracle of method selectRejected depends: true     
>        org.junit.Assume.assumeTrue(true);            //** Precondition on 
> which method selectRejected depends: (args[2]==null) == false            
> org.junit.Assume.assumeTrue((((Collection<Object>) linkedList0) == null) == 
> false);            //** Automatically generated test oracle is: 
> outputCollection., with guard: { description: outputCollection., 
> conditionText: true }            java.util.Collection<?> //** Automatically 
> generated test oracle is: outputCollection., with guard: { description: 
> outputCollection., conditionText: true }            _methodResult__ = 
> CollectionUtils.selectRejected((Iterable<? extends Comparable<Object>>) 
> vector0, (Predicate<? super Comparable<Object>>) nullIsExceptionPredicate0, 
> (Collection<Object>) linkedList0);            //** Postcondition on which the 
> oracle of method selectRejected depends: methodResultID.equals(args[2])       
>      org.junit.Assert.assertTrue(_methodResult__.equals(((Collection<Object>) 
> linkedList0)));        } catch (RuntimeException e) {            //           
>  // ExceptionPredicate invoked            //            
> verifyException("org.apache.commons.collections4.functors.ExceptionPredicate",
>  e);            org.junit.Assert.fail();        }        if (true)            
> throw new RuntimeException("Failure-driven test case completed without 
> pinpointing any failure. This should not happen. Please check");    }} {code}
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to