content: /*
   * This file was automatically generated by UTestGen and EvoSuite
   * Tue Mar 19 15:32:31 GMT 2024
   */
  
  package com.google.common.base;
  
  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 com.google.common.base.CharMatcher;
  import com.google.common.base.Predicate;
  import com.google.common.base.Predicates;
  import java.util.HashSet;
  import java.util.LinkedHashSet;
  import java.util.LinkedList;
  import java.util.List;
  import java.util.Locale;
  import java.util.regex.Pattern;
  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 Predicates_Original_ESTest extends Predicates_Original_ESTest_scaffolding {
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testWithNarrowedType() throws Throwable  {
        Predicates.ObjectPredicate predicates_ObjectPredicate = Predicates.ObjectPredicate.NOT_NULL;
        Predicate<CharMatcher> withNarrowedType = predicates_ObjectPredicate.withNarrowedType();
        assertNotNull(withNarrowedType);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testDefensiveCopy() throws Throwable  {
        LinkedList<CharMatcher> arg0 = new LinkedList<CharMatcher>();
        List<CharMatcher> defensiveCopy = Predicates.defensiveCopy((Iterable<CharMatcher>) arg0);
        assertTrue(defensiveCopy.isEmpty());
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void test0() throws Throwable  {
        Predicates.ObjectPredicate predicates_ObjectPredicate = Predicates.ObjectPredicate.NOT_NULL;
        Object arg0 = new Object();
        boolean apply = predicates_ObjectPredicate.apply(arg0);
        assertTrue(apply);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void test1() throws Throwable  {
        Predicates.ObjectPredicate predicates_ObjectPredicate = Predicates.ObjectPredicate.NOT_NULL;
        boolean apply = predicates_ObjectPredicate.apply((Object) null);
        assertFalse(apply);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void test2() throws Throwable  {
        Predicates.ObjectPredicate predicates_ObjectPredicate = Predicates.ObjectPredicate.IS_NULL;
        boolean apply = predicates_ObjectPredicate.apply((Object) null);
        assertTrue(apply);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testNotNull() throws Throwable  {
        Predicate<Predicate<Object>> arg0 = Predicates.notNull();
        Predicates.ObjectPredicate predicates_ObjectPredicate = Predicates.ObjectPredicate.IS_NULL;
        boolean apply = predicates_ObjectPredicate.apply(arg0);
        assertFalse(apply);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testEqualTo() throws Throwable  {
        Predicate<CharMatcher> equalTo = Predicates.equalTo((CharMatcher) null);
        assertNotNull(equalTo);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void test3() throws Throwable  {
        Predicates.ObjectPredicate arg0 = Predicates.ObjectPredicate.ALWAYS_FALSE;
        CharMatcher forPredicate = CharMatcher.forPredicate(arg0);
        assertNotNull(forPredicate);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testAlwaysTrue() throws Throwable  {
        Predicate<Object> arg0 = Predicates.alwaysTrue();
        CharMatcher forPredicate = CharMatcher.forPredicate(arg0);
        assertNotNull(forPredicate);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void test4() throws Throwable  {
        Predicates.ObjectPredicate predicates_ObjectPredicate = Predicates.ObjectPredicate.ALWAYS_TRUE;
        Object arg0 = new Object();
        boolean apply = predicates_ObjectPredicate.apply(arg0);
        assertTrue(apply);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testOrTaking2Arguments() throws Throwable  {
        Predicate<Object> arg1 = Predicates.isNull();
        Predicate<Object> arg0 = Predicates.or((Predicate<? super Object>) arg1, (Predicate<? super Object>) arg1);
        CharMatcher forPredicate = CharMatcher.forPredicate(arg0);
        assertNotNull(forPredicate);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testAndTakingIterable() throws Throwable  {
        HashSet<Predicate<Object>> arg0 = new HashSet<Predicate<Object>>(32, 32);
        Predicate<CharMatcher> and = Predicates.and((Iterable<? extends Predicate<? super CharMatcher>>) arg0);
        assertNotNull(and);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testContains() throws Throwable  {
        Pattern arg0 = Pattern.compile("plmH?VZp");
        Predicate<CharSequence> contains = Predicates.contains(arg0);
        assertNotNull(contains);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testOrTakingIterable() throws Throwable  {
        LinkedHashSet<Predicate<Object>> arg0 = new LinkedHashSet<Predicate<Object>>();
        Predicate<Object> or = Predicates.or((Iterable<? extends Predicate<? super Object>>) arg0);
        assertFalse(arg0.contains(or));
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testContainsPattern() throws Throwable  {
        Predicate<CharSequence> containsPattern = Predicates.containsPattern("");
        assertNotNull(containsPattern);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testAssignableFrom() throws Throwable  {
        Class<Object> arg0 = Object.class;
        Predicate<Class<?>> assignableFrom = Predicates.assignableFrom(arg0);
        assertNotNull(assignableFrom);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testAlwaysFalse() throws Throwable  {
        Predicate<Locale.FilteringMode> arg0 = Predicates.alwaysFalse();
        Predicates.ObjectPredicate predicates_ObjectPredicate = Predicates.ObjectPredicate.ALWAYS_FALSE;
        boolean apply = predicates_ObjectPredicate.apply(arg0);
        assertFalse(apply);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testIsNull() throws Throwable  {
        Predicate<Object> arg0 = Predicates.isNull();
        CharMatcher forPredicate = CharMatcher.forPredicate(arg0);
        assertNotNull(forPredicate);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testAndTaking2Arguments() throws Throwable  {
        Predicate<Object> arg1 = Predicates.alwaysTrue();
        Predicate<Object> arg0 = Predicates.and((Predicate<? super Object>) arg1, (Predicate<? super Object>) arg1);
        CharMatcher forPredicate = CharMatcher.forPredicate(arg0);
        assertNotNull(forPredicate);
    }
  }
  