content: /*
   * This file was automatically generated by UTestGen and EvoSuite
   * Tue Mar 19 14:55:20 GMT 2024
   */
  
  package com.google.common.cache;
  
  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 static org.evosuite.runtime.EvoAssertions.*;
  import com.google.common.cache.CacheBuilder;
  import com.google.common.cache.CacheBuilderSpec;
  import java.util.concurrent.TimeUnit;
  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 CacheBuilderSpec_Original_ESTest extends CacheBuilderSpec_Original_ESTest_scaffolding {
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testParseTaking3ArgumentsAndCreatesInitialCapacityParserAndParseTakingStringWithNonEmptyString() throws Throwable  {
        CacheBuilderSpec arg0 = CacheBuilderSpec.parse("weakKeys");
        CacheBuilderSpec.InitialCapacityParser cacheBuilderSpec_InitialCapacityParser = new CacheBuilderSpec.InitialCapacityParser();
        // Undeclared exception!
        try { 
          cacheBuilderSpec_InitialCapacityParser.parse(arg0, "weakKeys", "weakKeys");
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // key weakKeys value set to weakKeys, must be integer
           //
           verifyException("com.google.common.cache.CacheBuilderSpec$IntegerParser", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testToParsableStringReturningNonEmptyString() throws Throwable  {
        CacheBuilderSpec parse = CacheBuilderSpec.parse("weakKeys");
        String parsableString = parse.toParsableString();
        assertEquals("weakKeys", parsableString);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testParseTakingStringThrowsIllegalArgumentExceptionAndParseTakingString() throws Throwable  {
        CacheBuilderSpec.parse("weakKeys");
        // Undeclared exception!
        try { 
          CacheBuilderSpec.parse("weakKeys");
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // unknown key weakKeys
           //
           verifyException("com.google.common.base.Preconditions", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreatesRefreshDurationParserAndCallsParseDuration() throws Throwable  {
        CacheBuilderSpec arg0 = CacheBuilderSpec.parse("");
        CacheBuilderSpec.RefreshDurationParser cacheBuilderSpec_RefreshDurationParser = new CacheBuilderSpec.RefreshDurationParser();
        TimeUnit arg2 = TimeUnit.MILLISECONDS;
        cacheBuilderSpec_RefreshDurationParser.parseDuration(arg0, 1L, arg2);
        // Undeclared exception!
        try { 
          cacheBuilderSpec_RefreshDurationParser.parseDuration(arg0, 1L, arg2);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // refreshAfterWrite already set
           //
           verifyException("com.google.common.base.Preconditions", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreatesWriteDurationParserAndCallsParseDuration() throws Throwable  {
        CacheBuilderSpec arg0 = CacheBuilderSpec.parse("weakKeys");
        CacheBuilderSpec.WriteDurationParser cacheBuilderSpec_WriteDurationParser = new CacheBuilderSpec.WriteDurationParser();
        TimeUnit arg2 = TimeUnit.SECONDS;
        cacheBuilderSpec_WriteDurationParser.parseDuration(arg0, (-811L), arg2);
        // Undeclared exception!
        try { 
          cacheBuilderSpec_WriteDurationParser.parseDuration(arg0, (-811L), arg2);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // expireAfterWrite already set
           //
           verifyException("com.google.common.base.Preconditions", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testParseDurationAndCreatesAccessDurationParserAndParseDuration() throws Throwable  {
        CacheBuilderSpec arg0 = CacheBuilderSpec.parse("weakKeys");
        CacheBuilderSpec.AccessDurationParser cacheBuilderSpec_AccessDurationParser = new CacheBuilderSpec.AccessDurationParser();
        TimeUnit arg2 = TimeUnit.DAYS;
        cacheBuilderSpec_AccessDurationParser.parseDuration(arg0, 4271L, arg2);
        assertEquals("weakKeys", arg0.toParsableString());
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testParseDuration() throws Throwable  {
        CacheBuilderSpec arg0 = CacheBuilderSpec.parse("weakKeys");
        TimeUnit timeUnit = TimeUnit.DAYS;
        arg0.accessExpirationTimeUnit = timeUnit;
        CacheBuilderSpec.AccessDurationParser cacheBuilderSpec_AccessDurationParser = new CacheBuilderSpec.AccessDurationParser();
        // Undeclared exception!
        try { 
          cacheBuilderSpec_AccessDurationParser.parseDuration(arg0, 0L, arg0.accessExpirationTimeUnit);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // expireAfterAccess already set
           //
           verifyException("com.google.common.base.Preconditions", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreatesWriteDurationParserAndCallsParseTaking3Arguments0() throws Throwable  {
        CacheBuilderSpec arg0 = CacheBuilderSpec.parse("");
        CacheBuilderSpec.WriteDurationParser cacheBuilderSpec_WriteDurationParser = new CacheBuilderSpec.WriteDurationParser();
        // Undeclared exception!
        try { 
          cacheBuilderSpec_WriteDurationParser.parse(arg0, "=", "=");
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // key = invalid format.  was =, must end with one of [dDhHmMsS]
           //
           verifyException("com.google.common.cache.CacheBuilderSpec$DurationParser", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreatesRefreshDurationParser() throws Throwable  {
        CacheBuilderSpec arg0 = CacheBuilderSpec.parse("weakKeys");
        CacheBuilderSpec.RefreshDurationParser cacheBuilderSpec_RefreshDurationParser = new CacheBuilderSpec.RefreshDurationParser();
        // Undeclared exception!
        try { 
          cacheBuilderSpec_RefreshDurationParser.parse(arg0, "weakKeys", "weakKeys");
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // key weakKeys value set to weakKeys, must be integer
           //
           verifyException("com.google.common.cache.CacheBuilderSpec$DurationParser", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testParseTaking3ArgumentsAndCreatesAccessDurationParserAndParseTakingStringWithNonEmptyString() throws Throwable  {
        CacheBuilderSpec arg0 = CacheBuilderSpec.parse("weakKeys");
        CacheBuilderSpec.AccessDurationParser cacheBuilderSpec_AccessDurationParser = new CacheBuilderSpec.AccessDurationParser();
        // Undeclared exception!
        try { 
          cacheBuilderSpec_AccessDurationParser.parse(arg0, "weakKeys", "q8z%?@w4R~Gh");
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // key weakKeys value set to q8z%?@w4R~Gh, must be integer
           //
           verifyException("com.google.common.cache.CacheBuilderSpec$DurationParser", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testParseTaking3ArgumentsAndCreatesWriteDurationParserAndParseTakingStringWithNonEmptyString() throws Throwable  {
        CacheBuilderSpec arg0 = CacheBuilderSpec.parse("weakKeys");
        CacheBuilderSpec.WriteDurationParser cacheBuilderSpec_WriteDurationParser = new CacheBuilderSpec.WriteDurationParser();
        // Undeclared exception!
        try { 
          cacheBuilderSpec_WriteDurationParser.parse(arg0, "Fd", "Fd");
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // key Fd value set to Fd, must be integer
           //
           verifyException("com.google.common.cache.CacheBuilderSpec$DurationParser", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testParseTaking3ArgumentsAndCreatesAccessDurationParserAndParseTakingStringWithEmptyString() throws Throwable  {
        CacheBuilderSpec arg0 = CacheBuilderSpec.parse("");
        CacheBuilderSpec.AccessDurationParser cacheBuilderSpec_AccessDurationParser = new CacheBuilderSpec.AccessDurationParser();
        // Undeclared exception!
        try { 
          cacheBuilderSpec_AccessDurationParser.parse(arg0, "", "!'Wd<1h;{'7ghmOm");
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // key  value set to !'Wd<1h;{'7ghmOm, must be integer
           //
           verifyException("com.google.common.cache.CacheBuilderSpec$DurationParser", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreatesWriteDurationParserAndCallsParseTaking3Arguments1() throws Throwable  {
        CacheBuilderSpec arg0 = CacheBuilderSpec.parse("");
        CacheBuilderSpec.WriteDurationParser cacheBuilderSpec_WriteDurationParser = new CacheBuilderSpec.WriteDurationParser();
        // Undeclared exception!
        try { 
          cacheBuilderSpec_WriteDurationParser.parse(arg0, "d{744F'l+}z*V$zkl%", (String) null);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // value of key d{744F'l+}z*V$zkl% omitted
           //
           verifyException("com.google.common.base.Preconditions", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreatesRecordStatsParserAndCallsParseTaking3Arguments() throws Throwable  {
        CacheBuilderSpec arg0 = CacheBuilderSpec.parse("");
        CacheBuilderSpec.RecordStatsParser cacheBuilderSpec_RecordStatsParser = new CacheBuilderSpec.RecordStatsParser();
        // Undeclared exception!
        try { 
          cacheBuilderSpec_RecordStatsParser.parse(arg0, "", "");
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // recordStats does not take values
           //
           verifyException("com.google.common.base.Preconditions", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreatesConcurrencyLevelParserAndCallsParseInteger() throws Throwable  {
        CacheBuilderSpec arg0 = CacheBuilderSpec.parse("");
        CacheBuilderSpec.ConcurrencyLevelParser cacheBuilderSpec_ConcurrencyLevelParser = new CacheBuilderSpec.ConcurrencyLevelParser();
        cacheBuilderSpec_ConcurrencyLevelParser.parseInteger(arg0, 521);
        // Undeclared exception!
        try { 
          cacheBuilderSpec_ConcurrencyLevelParser.parseInteger(arg0, 521);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // concurrency level was already set to  [521]
           //
           verifyException("com.google.common.base.Preconditions", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testParseLongAndParseLongAndParseLong0() throws Throwable  {
        CacheBuilderSpec arg0 = CacheBuilderSpec.parse("");
        CacheBuilderSpec.MaximumSizeParser cacheBuilderSpec_MaximumSizeParser = new CacheBuilderSpec.MaximumSizeParser();
        cacheBuilderSpec_MaximumSizeParser.parseLong(arg0, (-88L));
        CacheBuilderSpec.MaximumWeightParser cacheBuilderSpec_MaximumWeightParser = new CacheBuilderSpec.MaximumWeightParser();
        // Undeclared exception!
        try { 
          cacheBuilderSpec_MaximumWeightParser.parseLong(arg0, 0L);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // maximum size was already set to  [-88]
           //
           verifyException("com.google.common.base.Preconditions", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreatesMaximumWeightParserAndCallsParseLong() throws Throwable  {
        CacheBuilderSpec arg0 = CacheBuilderSpec.parse("");
        CacheBuilderSpec.MaximumWeightParser cacheBuilderSpec_MaximumWeightParser = new CacheBuilderSpec.MaximumWeightParser();
        cacheBuilderSpec_MaximumWeightParser.parseLong(arg0, (-544L));
        // Undeclared exception!
        try { 
          cacheBuilderSpec_MaximumWeightParser.parseLong(arg0, (-1722L));
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // maximum weight was already set to  [-544]
           //
           verifyException("com.google.common.base.Preconditions", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testParseLongAndParseLongAndParseLong1() throws Throwable  {
        CacheBuilderSpec arg0 = CacheBuilderSpec.parse("");
        CacheBuilderSpec.MaximumWeightParser cacheBuilderSpec_MaximumWeightParser = new CacheBuilderSpec.MaximumWeightParser();
        cacheBuilderSpec_MaximumWeightParser.parseLong(arg0, 0L);
        CacheBuilderSpec.MaximumSizeParser cacheBuilderSpec_MaximumSizeParser = new CacheBuilderSpec.MaximumSizeParser();
        // Undeclared exception!
        try { 
          cacheBuilderSpec_MaximumSizeParser.parseLong(arg0, (-1792L));
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // maximum weight was already set to  [0]
           //
           verifyException("com.google.common.base.Preconditions", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreatesMaximumSizeParserAndCallsParseLong() throws Throwable  {
        CacheBuilderSpec arg0 = CacheBuilderSpec.parse("");
        CacheBuilderSpec.MaximumSizeParser cacheBuilderSpec_MaximumSizeParser = new CacheBuilderSpec.MaximumSizeParser();
        cacheBuilderSpec_MaximumSizeParser.parseLong(arg0, 0L);
        // Undeclared exception!
        try { 
          cacheBuilderSpec_MaximumSizeParser.parseLong(arg0, 0L);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // maximum size was already set to  [0]
           //
           verifyException("com.google.common.base.Preconditions", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreatesInitialCapacityParserAndCallsParseInteger() throws Throwable  {
        CacheBuilderSpec arg0 = CacheBuilderSpec.parse("");
        CacheBuilderSpec.InitialCapacityParser cacheBuilderSpec_InitialCapacityParser = new CacheBuilderSpec.InitialCapacityParser();
        cacheBuilderSpec_InitialCapacityParser.parseInteger(arg0, (-1632));
        // Undeclared exception!
        try { 
          cacheBuilderSpec_InitialCapacityParser.parseInteger(arg0, (-1632));
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // initial capacity was already set to  [-1632]
           //
           verifyException("com.google.common.base.Preconditions", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreatesMaximumSizeParserAndCallsParseTaking3Arguments() throws Throwable  {
        CacheBuilderSpec arg0 = CacheBuilderSpec.parse("");
        CacheBuilderSpec.MaximumSizeParser cacheBuilderSpec_MaximumSizeParser = new CacheBuilderSpec.MaximumSizeParser();
        // Undeclared exception!
        try { 
          cacheBuilderSpec_MaximumSizeParser.parse(arg0, "com.google.common.collect.UnmodifiableIterator", "com.google.common.collect.UnmodifiableIterator");
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // key com.google.common.collect.UnmodifiableIterator value set to com.google.common.collect.UnmodifiableIterator, must be integer
           //
           verifyException("com.google.common.cache.CacheBuilderSpec$LongParser", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreatesMaximumWeightParserAndCallsParseTaking3Arguments() throws Throwable  {
        CacheBuilderSpec.MaximumWeightParser cacheBuilderSpec_MaximumWeightParser = new CacheBuilderSpec.MaximumWeightParser();
        // Undeclared exception!
        try { 
          cacheBuilderSpec_MaximumWeightParser.parse((CacheBuilderSpec) null, "+qfrd?PNg<rlWgEL;(c", "");
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // value of key +qfrd?PNg<rlWgEL;(c omitted
           //
           verifyException("com.google.common.base.Preconditions", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testParseTaking3ArgumentsAndCreatesMaximumWeightParserAndParseTakingString() throws Throwable  {
        CacheBuilderSpec arg0 = CacheBuilderSpec.parse("");
        CacheBuilderSpec.MaximumWeightParser cacheBuilderSpec_MaximumWeightParser = new CacheBuilderSpec.MaximumWeightParser();
        // Undeclared exception!
        try { 
          cacheBuilderSpec_MaximumWeightParser.parse(arg0, (String) null, (String) null);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // value of key null omitted
           //
           verifyException("com.google.common.base.Preconditions", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testParseTaking3ArgumentsAndCreatesInitialCapacityParserAndParseTaking3Arguments() throws Throwable  {
        CacheBuilderSpec arg0 = CacheBuilderSpec.parse("weakKeys");
        CacheBuilderSpec.InitialCapacityParser cacheBuilderSpec_InitialCapacityParser = new CacheBuilderSpec.InitialCapacityParser();
        cacheBuilderSpec_InitialCapacityParser.parse(arg0, "7", "7");
        assertEquals("weakKeys", arg0.toParsableString());
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testParseTaking3ArgumentsAndCreatesInitialCapacityParserAndParseTakingStringWithEmptyString() throws Throwable  {
        CacheBuilderSpec arg0 = CacheBuilderSpec.parse("");
        CacheBuilderSpec.InitialCapacityParser cacheBuilderSpec_InitialCapacityParser = new CacheBuilderSpec.InitialCapacityParser();
        // Undeclared exception!
        try { 
          cacheBuilderSpec_InitialCapacityParser.parse(arg0, "H[fh*|", "");
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // value of key H[fh*| omitted
           //
           verifyException("com.google.common.base.Preconditions", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreatesInitialCapacityParserAndCallsParseTaking3Arguments() throws Throwable  {
        CacheBuilderSpec.InitialCapacityParser cacheBuilderSpec_InitialCapacityParser = new CacheBuilderSpec.InitialCapacityParser();
        // Undeclared exception!
        try { 
          cacheBuilderSpec_InitialCapacityParser.parse((CacheBuilderSpec) null, (String) null, (String) null);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // value of key null omitted
           //
           verifyException("com.google.common.base.Preconditions", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testEqualsAndParseTakingStringAndEqualsReturningFalse0() throws Throwable  {
        CacheBuilderSpec arg0 = CacheBuilderSpec.parse("");
        TimeUnit timeUnit = TimeUnit.SECONDS;
        arg0.refreshTimeUnit = timeUnit;
        CacheBuilderSpec parse = CacheBuilderSpec.parse("");
        boolean equals = parse.equals(arg0);
        assertFalse(arg0.equals((Object)parse));
        assertFalse(equals);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testEqualsAndParseTakingStringAndEqualsReturningFalse1() throws Throwable  {
        CacheBuilderSpec arg0 = CacheBuilderSpec.parse("");
        CacheBuilderSpec parse = CacheBuilderSpec.parse("");
        assertTrue(parse.equals((Object)arg0));
        
        TimeUnit timeUnit = TimeUnit.DAYS;
        parse.accessExpirationTimeUnit = timeUnit;
        boolean equals = parse.equals(arg0);
        assertFalse(equals);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testEqualsAndParseTakingStringAndEqualsReturningFalse2() throws Throwable  {
        CacheBuilderSpec parse = CacheBuilderSpec.parse("");
        CacheBuilderSpec arg0 = CacheBuilderSpec.parse("");
        assertTrue(arg0.equals((Object)parse));
        
        TimeUnit timeUnit = TimeUnit.DAYS;
        arg0.writeExpirationTimeUnit = timeUnit;
        boolean equals = parse.equals(arg0);
        assertFalse(arg0.equals((Object)parse));
        assertFalse(equals);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testParseTakingStringThrowsIllegalArgumentExceptionAndEquals() throws Throwable  {
        CacheBuilderSpec.parse("");
        // Undeclared exception!
        try { 
          CacheBuilderSpec.parse("softValues");
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // unknown key softValues
           //
           verifyException("com.google.common.base.Preconditions", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testEqualsAndParseTakingStringAndParseTakingStringWithNonEmptyString() throws Throwable  {
        CacheBuilderSpec parse = CacheBuilderSpec.parse("weakKeys");
        CacheBuilderSpec arg0 = CacheBuilderSpec.parse("");
        boolean equals = parse.equals(arg0);
        assertFalse(arg0.equals((Object)parse));
        assertFalse(equals);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testEqualsAndParseTakingStringAndEqualsReturningTrue0() throws Throwable  {
        CacheBuilderSpec arg0 = CacheBuilderSpec.parse("");
        CacheBuilderSpec parse = CacheBuilderSpec.parse("");
        boolean equals = parse.equals(arg0);
        assertTrue(equals);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testEqualsAndParseTakingStringAndEqualsReturningTrue1() throws Throwable  {
        CacheBuilderSpec arg0 = CacheBuilderSpec.parse("");
        boolean equals = arg0.equals(arg0);
        assertTrue(equals);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testEqualsWithNull() throws Throwable  {
        CacheBuilderSpec parse = CacheBuilderSpec.parse("");
        boolean equals = parse.equals((Object) null);
        assertFalse(equals);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testToCacheBuilderThrowsIllegalArgumentException() throws Throwable  {
        CacheBuilderSpec parse = CacheBuilderSpec.parse("");
        TimeUnit timeUnit = TimeUnit.MICROSECONDS;
        parse.refreshTimeUnit = timeUnit;
        // Undeclared exception!
        try { 
          parse.toCacheBuilder();
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // duration must be positive: 0 MICROSECONDS
           //
           verifyException("com.google.common.base.Preconditions", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testParseTakingStringAndToCacheBuilder0() throws Throwable  {
        CacheBuilderSpec parse = CacheBuilderSpec.parse("weakKeys");
        TimeUnit timeUnit = TimeUnit.MINUTES;
        parse.accessExpirationTimeUnit = timeUnit;
        CacheBuilder<Object, Object> cacheBuilder = parse.toCacheBuilder();
        assertNotNull(cacheBuilder);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testParseTakingStringAndToCacheBuilder1() throws Throwable  {
        CacheBuilderSpec parse = CacheBuilderSpec.parse("weakKeys");
        TimeUnit timeUnit = TimeUnit.MICROSECONDS;
        parse.writeExpirationTimeUnit = timeUnit;
        CacheBuilder<Object, Object> cacheBuilder = parse.toCacheBuilder();
        assertNotNull(cacheBuilder);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testToCacheBuilderThrowsIllegalArgumentExceptionAndCreatesMaximumSizeParser() throws Throwable  {
        CacheBuilderSpec arg0 = CacheBuilderSpec.parse("");
        CacheBuilderSpec.MaximumSizeParser cacheBuilderSpec_MaximumSizeParser = new CacheBuilderSpec.MaximumSizeParser();
        cacheBuilderSpec_MaximumSizeParser.parseLong(arg0, (-88L));
        // Undeclared exception!
        try { 
          arg0.toCacheBuilder();
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // maximum size must not be negative
           //
           verifyException("com.google.common.base.Preconditions", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testToCacheBuilderThrowsIllegalArgumentExceptionAndParseTakingStringWithNonEmptyString() throws Throwable  {
        CacheBuilderSpec parse = CacheBuilderSpec.parse("weakKeys");
        Integer integer = new Integer((-8));
        parse.initialCapacity = integer;
        // Undeclared exception!
        try { 
          parse.toCacheBuilder();
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // no message in exception (getMessage() returned null)
           //
           verifyException("com.google.common.base.Preconditions", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testParseTakingStringThrowsIllegalArgumentException() throws Throwable  {
        // Undeclared exception!
        try { 
          CacheBuilderSpec.parse("=CQ=DZ");
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // key-value pair =CQ=DZ with more than one equals sign
           //
           verifyException("com.google.common.base.Preconditions", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testDisableCachingThrowsIllegalArgumentException() throws Throwable  {
        // Undeclared exception!
        try { 
          CacheBuilderSpec.disableCaching();
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // unknown key maximumSize
           //
           verifyException("com.google.common.base.Preconditions", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testToString() throws Throwable  {
        CacheBuilderSpec parse = CacheBuilderSpec.parse("weakKeys");
        String string = parse.toString();
        assertEquals("CacheBuilderSpec{weakKeys}", string);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testToParsableStringReturningEmptyString() throws Throwable  {
        CacheBuilderSpec parse = CacheBuilderSpec.parse("");
        String parsableString = parse.toParsableString();
        assertEquals("", parsableString);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testHashCode() throws Throwable  {
        CacheBuilderSpec parse = CacheBuilderSpec.parse("");
        parse.hashCode();
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreatesAccessDurationParserAndCallsParseTaking3Arguments() throws Throwable  {
        CacheBuilderSpec.AccessDurationParser cacheBuilderSpec_AccessDurationParser = new CacheBuilderSpec.AccessDurationParser();
        // Undeclared exception!
        try { 
          cacheBuilderSpec_AccessDurationParser.parse((CacheBuilderSpec) null, "", "");
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // value of key  omitted
           //
           verifyException("com.google.common.base.Preconditions", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testParseTaking3ArgumentsAndCreatesRecordStatsParserAndParseTaking3Arguments() throws Throwable  {
        CacheBuilderSpec.RecordStatsParser cacheBuilderSpec_RecordStatsParser = new CacheBuilderSpec.RecordStatsParser();
        CacheBuilderSpec arg0 = CacheBuilderSpec.parse("");
        cacheBuilderSpec_RecordStatsParser.parse(arg0, (String) null, (String) null);
        // Undeclared exception!
        try { 
          cacheBuilderSpec_RecordStatsParser.parse(arg0, "", (String) null);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // recordStats already set
           //
           verifyException("com.google.common.base.Preconditions", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testToCacheBuilder() throws Throwable  {
        CacheBuilderSpec.InitialCapacityParser cacheBuilderSpec_InitialCapacityParser = new CacheBuilderSpec.InitialCapacityParser();
        CacheBuilderSpec parse = CacheBuilderSpec.parse("softValues");
        CacheBuilder<Object, Object> cacheBuilder = parse.toCacheBuilder();
        assertNotNull(cacheBuilder);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testToCacheBuilderThrowsIllegalArgumentExceptionAndCreatesConcurrencyLevelParser() throws Throwable  {
        CacheBuilderSpec.ConcurrencyLevelParser cacheBuilderSpec_ConcurrencyLevelParser = new CacheBuilderSpec.ConcurrencyLevelParser();
        CacheBuilderSpec arg0 = CacheBuilderSpec.parse("");
        cacheBuilderSpec_ConcurrencyLevelParser.parseInteger(arg0, 0);
        // Undeclared exception!
        try { 
          arg0.toCacheBuilder();
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // no message in exception (getMessage() returned null)
           //
           verifyException("com.google.common.base.Preconditions", e);
        }
    }
  }
  