content: /*
   * This file was automatically generated by UTestGen and EvoSuite
   * Mon Mar 18 01:14:27 GMT 2024
   */
  
  package net.sourceforge.beanbin.reflect;
  
  import org.junit.jupiter.api.Test;
  import static org.junit.jupiter.api.Assertions.*;
  import org.junit.jupiter.api.Timeout;
  import java.util.concurrent.TimeUnit;
  import java.lang.reflect.Method;
  import java.util.List;
  import net.sourceforge.beanbin.query.Criteria;
  import net.sourceforge.beanbin.reflect.ReflectionSearch;
  import org.evosuite.runtime.EvoRunner;
  import org.evosuite.runtime.EvoRunnerParameters;
  import org.junit.runner.RunWith;
  
  @RunWith(EvoRunner.class) @EvoRunnerParameters(mockJVMNonDeterminism = true, useVFS = true, useVNET = true, resetStaticState = true, separateClassLoader = true) 
  public class ReflectionSearch_Original_ESTest extends ReflectionSearch_Original_ESTest_scaffolding {
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testUnion() throws Throwable  {
        Class<Object> arg0 = Object.class;
        ReflectionSearch reflectionSearch = new ReflectionSearch(arg0);
        List<Method> arg1 = reflectionSearch.getMethods();
        reflectionSearch.union(arg1, arg1);
        assertTrue(arg1.isEmpty());
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testMethodsThatHave() throws Throwable  {
        Class<Criteria> arg0 = Criteria.class;
        ReflectionSearch reflectionSearch = new ReflectionSearch(arg0);
        reflectionSearch.or();
        reflectionSearch.methodsThatHave(")");
        ReflectionSearch methodsThatDontHave = reflectionSearch.methodsThatDontHave("net.sourceforge.beanbin.reflect.MethodReflectionCriteria");
        List<Method> methods = methodsThatDontHave.getMethods();
        assertEquals(16, methods.size());
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testGetMethodsReturningListWhereIsEmptyIsFalse() throws Throwable  {
        Class<Method> arg0 = Method.class;
        ReflectionSearch reflectionSearch = new ReflectionSearch(arg0);
        ReflectionSearch methodsThatDontHave = reflectionSearch.methodsThatDontHave(".");
        methodsThatDontHave.methodsThatDontHave(".");
        List<Method> methods = reflectionSearch.getMethods();
        assertNotNull(methods);
        assertFalse(methods.isEmpty());
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testGetMethodsReturningListWhereIsEmptyIsTrueAndListWhereSizeIsZero() throws Throwable  {
        Class<Object> arg0 = Object.class;
        ReflectionSearch reflectionSearch = new ReflectionSearch(arg0);
        reflectionSearch.getMethods();
        List<Method> methods = reflectionSearch.getMethods();
        assertTrue(methods.isEmpty());
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testHasAnnotation() throws Throwable  {
        Class<Object> arg0 = Object.class;
        ReflectionSearch reflectionSearch = new ReflectionSearch(arg0);
        boolean annotation = reflectionSearch.hasAnnotation("");
        assertFalse(annotation);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testAnd() throws Throwable  {
        Class<Object> arg0 = Object.class;
        ReflectionSearch reflectionSearch = new ReflectionSearch(arg0);
        ReflectionSearch and = reflectionSearch.and();
        assertSame(reflectionSearch, and);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testOr() throws Throwable  {
        Class<Criteria> arg0 = Criteria.class;
        ReflectionSearch reflectionSearch = new ReflectionSearch(arg0);
        ReflectionSearch or = reflectionSearch.or();
        ReflectionSearch methodsThatDontHave = or.methodsThatDontHave("net.sourceforge.beanbin.reflect.MethodReflectionCriteria");
        reflectionSearch.methodsThatDontHave("net.sourceforge.beanbin.reflect.MethodReflectionCriteria");
        List<Method> methods = methodsThatDontHave.getMethods();
        assertEquals(16, methods.size());
        assertNotNull(methods);
    }
  }
  