/*
 * This file was automatically generated by EvoSuite
 * Thu Sep 20 13:37:35 GMT 2018
 */

package uk.ac.sanger.artemis.circular;

import org.junit.Test;
import static org.junit.Assert.*;
import static org.evosuite.runtime.EvoAssertions.*;
import java.awt.datatransfer.DataFlavor;
import java.awt.datatransfer.UnsupportedFlavorException;
import org.evosuite.runtime.EvoRunner;
import org.evosuite.runtime.EvoRunnerParameters;
import org.junit.runner.RunWith;
import uk.ac.sanger.artemis.circular.SequenceData;

@RunWith(EvoRunner.class) @EvoRunnerParameters(mockJVMNonDeterminism = true, useVFS = true, useVNET = true, resetStaticState = true, useJEE = true) 
public class SequenceData_ESTest extends SequenceData_ESTest_scaffolding {

  @Test(timeout = 4000)
  public void test00()  throws Throwable  {
      Boolean boolean0 = new Boolean("Sequence data");
      SequenceData sequenceData0 = new SequenceData("Sequence data", "Sequence data", "ID field cannot be the null or the empty string", boolean0, boolean0, boolean0);
      SequenceData.flavors = null;
      sequenceData0.getTransferDataFlavors();
      assertEquals("Sequence data", sequenceData0.getSequenceName());
  }

  @Test(timeout = 4000)
  public void test01()  throws Throwable  {
      SequenceData sequenceData0 = new SequenceData();
      DataFlavor[] dataFlavorArray0 = new DataFlavor[0];
      SequenceData.flavors = dataFlavorArray0;
      DataFlavor[] dataFlavorArray1 = sequenceData0.getTransferDataFlavors();
      assertEquals(0, dataFlavorArray1.length);
  }

  @Test(timeout = 4000)
  public void test02()  throws Throwable  {
      Boolean boolean0 = Boolean.valueOf("Sequence data");
      SequenceData sequenceData0 = new SequenceData((String) null, (String) null, "uk.ac.sanger.artemis.circular.SequenceData", boolean0, boolean0, boolean0);
      String string0 = sequenceData0.getSequenceName();
      assertNull(string0);
  }

  @Test(timeout = 4000)
  public void test03()  throws Throwable  {
      Boolean boolean0 = new Boolean("Sequence data");
      SequenceData sequenceData0 = new SequenceData("Sequence data", "Sequence data", "ID field cannot be the null or the empty string", boolean0, boolean0, boolean0);
      String string0 = sequenceData0.getSequenceName();
      assertNotNull(string0);
      assertEquals("Sequence data", string0);
  }

  @Test(timeout = 4000)
  public void test04()  throws Throwable  {
      Boolean boolean0 = new Boolean(true);
      SequenceData sequenceData0 = new SequenceData("The embedded 'javascript' engine is not available in java. Do you use the SUN/Oracle Java Runtime ?", "The embedded 'javascript' engine is not available in java. Do you use the SUN/Oracle Java Runtime ?", "Sequence data", boolean0, boolean0, boolean0);
      // Undeclared exception!
      try { 
        sequenceData0.isDataFlavorSupported((DataFlavor) null);
        fail("Expecting exception: NullPointerException");
      
      } catch(NullPointerException e) {
         //
         // no message in exception (getMessage() returned null)
         //
         verifyException("uk.ac.sanger.artemis.circular.SequenceData", e);
      }
  }

  @Test(timeout = 4000)
  public void test05()  throws Throwable  {
      SequenceData sequenceData0 = new SequenceData();
      // Undeclared exception!
      try { 
        sequenceData0.getTransferData((DataFlavor) null);
        fail("Expecting exception: NullPointerException");
      
      } catch(NullPointerException e) {
         //
         // no message in exception (getMessage() returned null)
         //
         verifyException("uk.ac.sanger.artemis.circular.SequenceData", e);
      }
  }

  @Test(timeout = 4000)
  public void test06()  throws Throwable  {
      Boolean boolean0 = Boolean.TRUE;
      SequenceData sequenceData0 = new SequenceData("uk.ac.sanger.artems.circular.SequenceData", "uk.ac.sanger.artems.circular.SequenceData", "uk.ac.sanger.artems.circular.SequenceData", boolean0, boolean0, boolean0);
      Object object0 = sequenceData0.getTransferData(sequenceData0.SEQUENCEDATA);
      assertSame(sequenceData0, object0);
  }

  @Test(timeout = 4000)
  public void test07()  throws Throwable  {
      SequenceData sequenceData0 = new SequenceData();
      DataFlavor dataFlavor0 = DataFlavor.getTextPlainUnicodeFlavor();
      try { 
        sequenceData0.getTransferData(dataFlavor0);
        fail("Expecting exception: UnsupportedFlavorException");
      
      } catch(UnsupportedFlavorException e) {
         //
         // Plain Text
         //
         verifyException("uk.ac.sanger.artemis.circular.SequenceData", e);
      }
  }

  @Test(timeout = 4000)
  public void test08()  throws Throwable  {
      SequenceData sequenceData0 = new SequenceData();
      DataFlavor dataFlavor0 = DataFlavor.selectionHtmlFlavor;
      boolean boolean0 = sequenceData0.isDataFlavorSupported(dataFlavor0);
      assertFalse(boolean0);
  }

  @Test(timeout = 4000)
  public void test09()  throws Throwable  {
      Boolean boolean0 = new Boolean(true);
      SequenceData sequenceData0 = new SequenceData("The embedded 'javascript' engine is not available in java. Do you use the SUN/Oracle Java Runtime ?", "The embedded 'javascript' engine is not available in java. Do you use the SUN/Oracle Java Runtime ?", "Sequence data", boolean0, boolean0, boolean0);
      sequenceData0.getTransferDataFlavors();
      assertEquals("The embedded 'javascript' engine is not available in java. Do you use the SUN/Oracle Java Runtime ?", sequenceData0.getSequenceName());
  }

  @Test(timeout = 4000)
  public void test10()  throws Throwable  {
      SequenceData sequenceData0 = new SequenceData();
      String string0 = sequenceData0.getSequenceName();
      assertEquals("", string0);
  }

  @Test(timeout = 4000)
  public void test11()  throws Throwable  {
      Boolean boolean0 = Boolean.TRUE;
      SequenceData sequenceData0 = new SequenceData("uk.ac.sanger.artems.circular.SequenceData", "uk.ac.sanger.artems.circular.SequenceData", "uk.ac.sanger.artems.circular.SequenceData", boolean0, boolean0, boolean0);
      boolean boolean1 = sequenceData0.isDataFlavorSupported(sequenceData0.SEQUENCEDATA);
      assertTrue(boolean1);
  }
}
