content: /*
   * This file was automatically generated by UTestGen and EvoSuite
   * Wed Mar 20 17:51:01 GMT 2024
   */
  
  package org.znerd.xmlenc;
  
  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 org.evosuite.runtime.EvoRunner;
  import org.evosuite.runtime.EvoRunnerParameters;
  import org.junit.runner.RunWith;
  import org.znerd.xmlenc.XMLChecker;
  
  @RunWith(EvoRunner.class) @EvoRunnerParameters(mockJVMNonDeterminism = true, useVFS = true, useVNET = true, resetStaticState = true, separateClassLoader = true) 
  public class XMLChecker_Original_ESTest extends XMLChecker_Original_ESTest_scaffolding {
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCheckPubidLiteralTaking3ArgumentsWithNegative() throws Throwable  {
        char[] arg0 = new char[5];
        try { 
          XMLChecker.checkPubidLiteral(arg0, 3018, (-310));
          fail("Expecting exception: RuntimeException");
        
        } catch(RuntimeException e) {
           //
           // Minimum length for the 'PubidLiteral' production is 3 characters.
           //
           verifyException("org.znerd.xmlenc.XMLChecker", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCheckSystemLiteralTaking3ArgumentsThrowsRuntimeException0() throws Throwable  {
        char[] arg0 = new char[8];
        arg0[0] = '\"';
        try { 
          XMLChecker.checkSystemLiteral(arg0, 3, 3);
          fail("Expecting exception: RuntimeException");
        
        } catch(RuntimeException e) {
           //
           // First character is '\"', but the last character is 0x0.
           //
           verifyException("org.znerd.xmlenc.XMLChecker", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCheckSystemLiteralTaking3ArgumentsThrowsRuntimeException1() throws Throwable  {
        char[] arg0 = new char[8];
        try { 
          XMLChecker.checkSystemLiteral(arg0, 3, 3);
          fail("Expecting exception: RuntimeException");
        
        } catch(RuntimeException e) {
           //
           // First char must either be '\\'' or '\"' instead of 0x0.
           //
           verifyException("org.znerd.xmlenc.XMLChecker", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCheckNameTaking3ArgumentsThrowsRuntimeException0() throws Throwable  {
        char[] arg0 = new char[10];
        arg0[1] = '\u00E3';
        arg0[2] = '\u00E3';
        try { 
          XMLChecker.checkName(arg0, 1, 8016);
          fail("Expecting exception: RuntimeException");
        
        } catch(RuntimeException e) {
           //
           // The character 0x0 is not valid for the 'Name' production.
           //
           verifyException("org.znerd.xmlenc.XMLChecker", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCheckSTaking3Arguments() throws Throwable  {
        char[] arg0 = new char[3];
        XMLChecker.checkS(arg0, (int) '_', (int) '_');
        assertArrayEquals(new char[] {'\u0000', '\u0000', '\u0000'}, arg0);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCheckPubidLiteralTakingStringThrowsRuntimeException() throws Throwable  {
        try { 
          XMLChecker.checkPubidLiteral("");
          fail("Expecting exception: RuntimeException");
        
        } catch(RuntimeException e) {
           //
           // Minimum length for the 'PubidLiteral' production is 3 characters.
           //
           verifyException("org.znerd.xmlenc.XMLChecker", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCheckNameTaking3Arguments0() throws Throwable  {
        char[] arg0 = new char[19];
        arg0[1] = '\u00D0';
        XMLChecker.checkName(arg0, 1, 1);
        assertEquals(19, arg0.length);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCheckNameTaking3ArgumentsThrowsRuntimeException1() throws Throwable  {
        char[] arg0 = new char[10];
        arg0[3] = '\uFF92';
        try { 
          XMLChecker.checkName(arg0, 3, (int) '\uFF92');
          fail("Expecting exception: RuntimeException");
        
        } catch(RuntimeException e) {
           //
           // The character 0xff92 is invalid as a starting character in the 'Name' production.
           //
           verifyException("org.znerd.xmlenc.XMLChecker", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testIsName0() throws Throwable  {
        boolean name = XMLChecker.isName("y:.Cb={Mntb<X");
        assertFalse(name);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testIsName1() throws Throwable  {
        boolean name = XMLChecker.isName("p_m=nco9txqTUc.}");
        assertFalse(name);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testIsNameReturningTrue() throws Throwable  {
        boolean name = XMLChecker.isName("kVtZoX-g");
        assertTrue(name);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCheckPubidLiteralTaking3Arguments0() throws Throwable  {
        char[] arg0 = new char[9];
        arg0[0] = '\'';
        arg0[1] = ',';
        arg0[5] = '\'';
        XMLChecker.checkPubidLiteral(arg0, 3, 3);
        assertArrayEquals(new char[] {'\'', ',', '\u0000', '\u0000', '\u0000', '\'', '\u0000', '\u0000', '\u0000'}, arg0);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCheckPubidLiteralTaking3Arguments1() throws Throwable  {
        char[] arg0 = new char[7];
        arg0[0] = '\'';
        arg0[1] = 'U';
        arg0[5] = '\'';
        XMLChecker.checkPubidLiteral(arg0, 3, 3);
        assertEquals(7, arg0.length);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCheckPubidLiteralTaking3ArgumentsThrowsRuntimeExceptionAndCheckPubidLiteralTaking3ArgumentsWithZero0() throws Throwable  {
        char[] arg0 = new char[20];
        arg0[0] = '\"';
        arg0[2] = '\"';
        try { 
          XMLChecker.checkPubidLiteral(arg0, 0, 3);
          fail("Expecting exception: RuntimeException");
        
        } catch(RuntimeException e) {
           //
           // The character '\u0000' (0x0) is not valid for the 'PubidLiteral' production.
           //
           verifyException("org.znerd.xmlenc.XMLChecker", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCheckPubidLiteralTaking3ArgumentsThrowsRuntimeExceptionAndCheckPubidLiteralTaking3ArgumentsWithZero1() throws Throwable  {
        char[] arg0 = new char[20];
        arg0[0] = '\"';
        try { 
          XMLChecker.checkPubidLiteral(arg0, 0, 3);
          fail("Expecting exception: RuntimeException");
        
        } catch(RuntimeException e) {
           //
           // First character is '\"', but the last character is 0x0.
           //
           verifyException("org.znerd.xmlenc.XMLChecker", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCheckPubidLiteralTaking3ArgumentsThrowsRuntimeExceptionAndCheckPubidLiteralTaking3ArgumentsWithPositive0() throws Throwable  {
        char[] arg0 = new char[25];
        arg0[0] = '\'';
        try { 
          XMLChecker.checkPubidLiteral(arg0, 3, 3);
          fail("Expecting exception: RuntimeException");
        
        } catch(RuntimeException e) {
           //
           // First character is '\\'', but the last character is 0x0.
           //
           verifyException("org.znerd.xmlenc.XMLChecker", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCheckPubidLiteralTaking3ArgumentsThrowsRuntimeExceptionAndCheckPubidLiteralTaking3ArgumentsWithPositive1() throws Throwable  {
        char[] arg0 = new char[25];
        try { 
          XMLChecker.checkPubidLiteral(arg0, 3, 3);
          fail("Expecting exception: RuntimeException");
        
        } catch(RuntimeException e) {
           //
           // First char must either be '\\'' or '\"' instead of 0x0.
           //
           verifyException("org.znerd.xmlenc.XMLChecker", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCheckSystemLiteralTaking3ArgumentsThrowsRuntimeException2() throws Throwable  {
        char[] arg0 = new char[9];
        arg0[0] = '\'';
        arg0[1] = '\'';
        arg0[5] = '\'';
        try { 
          XMLChecker.checkSystemLiteral(arg0, 3, 3);
          fail("Expecting exception: RuntimeException");
        
        } catch(RuntimeException e) {
           //
           // Found '\\'' at position 1.
           //
           verifyException("org.znerd.xmlenc.XMLChecker", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCheckSystemLiteralTakingStringThrowsRuntimeException() throws Throwable  {
        try { 
          XMLChecker.checkSystemLiteral("\"#Xj`DlNH");
          fail("Expecting exception: RuntimeException");
        
        } catch(RuntimeException e) {
           //
           // First character is '\"', but the last character is 0x48.
           //
           verifyException("org.znerd.xmlenc.XMLChecker", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCheckSystemLiteralTaking3Arguments() throws Throwable  {
        char[] arg0 = new char[25];
        arg0[0] = '\'';
        arg0[5] = '\'';
        XMLChecker.checkSystemLiteral(arg0, 3, 3);
        assertEquals(25, arg0.length);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCheckSystemLiteralTaking3ArgumentsThrowsRuntimeException3() throws Throwable  {
        char[] arg0 = new char[25];
        arg0[0] = '\'';
        try { 
          XMLChecker.checkSystemLiteral(arg0, 3, 3);
          fail("Expecting exception: RuntimeException");
        
        } catch(RuntimeException e) {
           //
           // First character is '\\'', but the last character is 0x0.
           //
           verifyException("org.znerd.xmlenc.XMLChecker", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCheckSystemLiteralTaking3ArgumentsWithZeroAndZero() throws Throwable  {
        char[] arg0 = new char[4];
        try { 
          XMLChecker.checkSystemLiteral(arg0, 0, 0);
          fail("Expecting exception: RuntimeException");
        
        } catch(RuntimeException e) {
           //
           // Minimum length for the 'SystemLiteral' production is 3 characters.
           //
           verifyException("org.znerd.xmlenc.XMLChecker", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCheckNameTaking3ArgumentsWithZero() throws Throwable  {
        char[] arg0 = new char[9];
        arg0[0] = ':';
        try { 
          XMLChecker.checkName(arg0, 0, 3212);
          fail("Expecting exception: RuntimeException");
        
        } catch(RuntimeException e) {
           //
           // The character 0x0 is not valid for the 'Name' production.
           //
           verifyException("org.znerd.xmlenc.XMLChecker", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCheckNameTaking3Arguments1() throws Throwable  {
        char[] arg0 = new char[3];
        arg0[1] = '_';
        XMLChecker.checkName(arg0, 1, 1);
        assertArrayEquals(new char[] {'\u0000', '_', '\u0000'}, arg0);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCheckNameTaking3ArgumentsWithNegative() throws Throwable  {
        char[] arg0 = new char[9];
        try { 
          XMLChecker.checkName(arg0, 1, (-3325));
          fail("Expecting exception: RuntimeException");
        
        } catch(RuntimeException e) {
           //
           // An empty string does not match the 'Name' production.
           //
           verifyException("org.znerd.xmlenc.XMLChecker", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCheckSTaking3ArgumentsThrowsRuntimeException0() throws Throwable  {
        char[] arg0 = new char[2];
        arg0[0] = '\n';
        try { 
          XMLChecker.checkS(arg0, 0, (int) '\n');
          fail("Expecting exception: RuntimeException");
        
        } catch(RuntimeException e) {
           //
           // The character 0x0 is not valid for the 'S' production (white space).
           //
           verifyException("org.znerd.xmlenc.XMLChecker", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCheckSTaking3ArgumentsThrowsRuntimeException1() throws Throwable  {
        char[] arg0 = new char[6];
        arg0[0] = '\t';
        try { 
          XMLChecker.checkS(arg0, 0, 32);
          fail("Expecting exception: RuntimeException");
        
        } catch(RuntimeException e) {
           //
           // The character 0x0 is not valid for the 'S' production (white space).
           //
           verifyException("org.znerd.xmlenc.XMLChecker", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCheckSTaking3ArgumentsWithPositive() throws Throwable  {
        char[] arg0 = new char[7];
        arg0[1] = ' ';
        try { 
          XMLChecker.checkS(arg0, 1, 3782);
          fail("Expecting exception: RuntimeException");
        
        } catch(RuntimeException e) {
           //
           // The character 0x0 is not valid for the 'S' production (white space).
           //
           verifyException("org.znerd.xmlenc.XMLChecker", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testIsSystemLiteral() throws Throwable  {
        boolean systemLiteral = XMLChecker.isSystemLiteral("%l$v'C`(PqB@~)hzY9S");
        assertFalse(systemLiteral);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCheckSTakingString() throws Throwable  {
        XMLChecker.checkS("");
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testIsName2() throws Throwable  {
        boolean name = XMLChecker.isName("iAL9.$V@");
        assertFalse(name);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testIsPubidLiteral() throws Throwable  {
        boolean pubidLiteral = XMLChecker.isPubidLiteral("");
        assertFalse(pubidLiteral);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCheckNameTakingStringThrowsNullPointerException() throws Throwable  {
        try { 
          XMLChecker.checkName((String) null);
          fail("Expecting exception: NullPointerException");
        
        } catch(NullPointerException e) {
           //
           // no message in exception (getMessage() returned null)
           //
           verifyException("org.znerd.xmlenc.XMLChecker", e);
        }
    }
  }
  