content: /*
   * This file was automatically generated by UTestGen and EvoSuite
   * Wed Mar 20 03:54:55 GMT 2024
   */
  
  package org.jfree.data.general;
  
  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 java.lang.reflect.Array;
  import java.math.BigInteger;
  import java.util.Date;
  import org.evosuite.runtime.EvoRunner;
  import org.evosuite.runtime.EvoRunnerParameters;
  import org.evosuite.runtime.mock.java.util.MockDate;
  import org.evosuite.runtime.mock.java.util.MockGregorianCalendar;
  import org.jfree.data.KeyToGroupMap;
  import org.jfree.data.KeyedValues;
  import org.jfree.data.Range;
  import org.jfree.data.category.CategoryDataset;
  import org.jfree.data.category.DefaultCategoryDataset;
  import org.jfree.data.category.DefaultIntervalCategoryDataset;
  import org.jfree.data.function.Function2D;
  import org.jfree.data.function.LineFunction2D;
  import org.jfree.data.function.NormalDistributionFunction2D;
  import org.jfree.data.gantt.TaskSeriesCollection;
  import org.jfree.data.general.DatasetUtilities;
  import org.jfree.data.general.DefaultKeyedValues2DDataset;
  import org.jfree.data.general.DefaultKeyedValuesDataset;
  import org.jfree.data.general.DefaultPieDataset;
  import org.jfree.data.general.PieDataset;
  import org.jfree.data.statistics.DefaultBoxAndWhiskerCategoryDataset;
  import org.jfree.data.statistics.DefaultStatisticalCategoryDataset;
  import org.jfree.data.statistics.SimpleHistogramDataset;
  import org.jfree.data.time.DynamicTimeSeriesCollection;
  import org.jfree.data.time.Millisecond;
  import org.jfree.data.time.Month;
  import org.jfree.data.time.TimeSeriesCollection;
  import org.jfree.data.time.TimeTableXYDataset;
  import org.jfree.data.xy.CategoryTableXYDataset;
  import org.jfree.data.xy.DefaultOHLCDataset;
  import org.jfree.data.xy.DefaultXYZDataset;
  import org.jfree.data.xy.OHLCDataItem;
  import org.jfree.data.xy.TableXYDataset;
  import org.jfree.data.xy.XYDataset;
  import org.jfree.data.xy.XYSeriesCollection;
  import org.jfree.date.SpreadsheetDate;
  import org.junit.runner.RunWith;
  
  @RunWith(EvoRunner.class) @EvoRunnerParameters(mockJVMNonDeterminism = true, useVFS = true, useVNET = true, resetStaticState = true, separateClassLoader = true) 
  public class DatasetUtilities_Original_ESTest extends DatasetUtilities_Original_ESTest_scaffolding {
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testIterateCategoryRangeBoundsReturningRangeWhereGetUpperBoundIsNegative() throws Throwable  {
        double[][] arg2 = new double[3][3];
        double[] doubleArray = new double[1];
        doubleArray[0] = (-2577.937);
        arg2[0] = doubleArray;
        arg2[1] = arg2[0];
        arg2[2] = arg2[0];
        CategoryDataset arg0 = DatasetUtilities.createCategoryDataset("yPt}O^tR{GMK0a?", "", arg2);
        Range iterateCategoryRangeBounds = DatasetUtilities.iterateCategoryRangeBounds(arg0, true);
        assertNotNull(iterateCategoryRangeBounds);
        assertEquals((-2577.937), iterateCategoryRangeBounds.getUpperBound(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testIterateCategoryRangeBoundsReturningRangeWhereGetLowerBoundIsPositive() throws Throwable  {
        double[] doubleArray = new double[1];
        doubleArray[0] = (double) 37;
        double[][] arg2 = new double[2][7];
        arg2[0] = doubleArray;
        arg2[1] = doubleArray;
        CategoryDataset arg0 = DatasetUtilities.createCategoryDataset("org.jfree.data.time.Year", "siHU).Us\"oUm0HM`4o", arg2);
        Range iterateCategoryRangeBounds = DatasetUtilities.iterateCategoryRangeBounds(arg0, false);
        assertEquals(37.0, iterateCategoryRangeBounds.getLowerBound(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testIterateCategoryRangeBoundsReturningRangeWhereGetCentralValueIsPositive() throws Throwable  {
        double[][] arg2 = new double[5][1];
        double[] doubleArray = new double[3];
        doubleArray[2] = Double.POSITIVE_INFINITY;
        arg2[1] = doubleArray;
        CategoryDataset arg0 = DatasetUtilities.createCategoryDataset((String) null, (String) null, arg2);
        Range iterateCategoryRangeBounds = DatasetUtilities.iterateCategoryRangeBounds(arg0, true);
        assertNotNull(iterateCategoryRangeBounds);
        assertEquals(0.0, iterateCategoryRangeBounds.getLowerBound(), 0.01);
        assertEquals(Double.POSITIVE_INFINITY, iterateCategoryRangeBounds.getLength(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testIterateCategoryRangeBoundsReturningRangeWhereGetCentralValueIsNegative() throws Throwable  {
        double[][] arg2 = new double[3][1];
        double[] doubleArray = new double[2];
        doubleArray[0] = (-2.2222944E12);
        arg2[0] = doubleArray;
        CategoryDataset arg0 = DatasetUtilities.createCategoryDataset((String) null, (String) null, arg2);
        Range iterateCategoryRangeBounds = DatasetUtilities.iterateCategoryRangeBounds(arg0, true);
        assertNotNull(iterateCategoryRangeBounds);
        assertEquals((-1.1111472E12), iterateCategoryRangeBounds.getCentralValue(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindStackedRangeBoundsTaking1And1ReturningRangeWhereGetCentralValueIsNegative0() throws Throwable  {
        TimeTableXYDataset arg0 = new TimeTableXYDataset();
        Range findStackedRangeBounds = DatasetUtilities.findStackedRangeBounds((TableXYDataset) arg0, Double.NEGATIVE_INFINITY);
        assertEquals(Double.NaN, findStackedRangeBounds.getLength(), 0.01);
        assertNotNull(findStackedRangeBounds);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindStackedRangeBoundsTakingTableXYDatasetReturningRangeWhereGetCentralValueIsPositive() throws Throwable  {
        Float arg1 = new Float(686.2132332);
        CategoryTableXYDataset arg0 = new CategoryTableXYDataset();
        arg0.add((Number) arg1, (Number) arg1, "Izib#\"34>nH!)6Yb[", true);
        Range findStackedRangeBounds = DatasetUtilities.findStackedRangeBounds((TableXYDataset) arg0);
        assertNotNull(findStackedRangeBounds);
        assertEquals(686.2132568359375, findStackedRangeBounds.getUpperBound(), 0.01);
        assertEquals(0.0, findStackedRangeBounds.getLowerBound(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindStackedRangeBoundsTakingTableXYDatasetReturningRangeWhereGetCentralValueIsNegative() throws Throwable  {
        CategoryTableXYDataset arg0 = new CategoryTableXYDataset();
        Float arg1 = new Float((-144.0));
        arg0.add((Number) arg1, (Number) arg1, "Izib#\"34>nH!)6Yb[", false);
        Range findStackedRangeBounds = DatasetUtilities.findStackedRangeBounds((TableXYDataset) arg0);
        assertNotNull(findStackedRangeBounds);
        assertEquals((-72.0), findStackedRangeBounds.getCentralValue(), 0.01);
        assertEquals(0.0, findStackedRangeBounds.getUpperBound(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindStackedRangeBoundsTaking1And1ReturningRangeWhereGetUpperBoundIsNegative() throws Throwable  {
        double[][] arg2 = new double[5][1];
        CategoryDataset arg0 = DatasetUtilities.createCategoryDataset((String) null, (String) null, arg2);
        Range findStackedRangeBounds = DatasetUtilities.findStackedRangeBounds(arg0, Double.NEGATIVE_INFINITY);
        assertNotNull(findStackedRangeBounds);
        assertEquals(Double.NEGATIVE_INFINITY, findStackedRangeBounds.getUpperBound(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindRangeBoundsTaking1And1ReturningRangeWhereGetUpperBoundIsNegative() throws Throwable  {
        double[][] arg2 = new double[1][4];
        double[] doubleArray = new double[2];
        doubleArray[0] = (-4269.1824318);
        doubleArray[1] = (-492.613022849);
        arg2[0] = doubleArray;
        CategoryDataset arg0 = DatasetUtilities.createCategoryDataset("sLcPp9/vtN@-[", "", arg2);
        Range findRangeBounds = DatasetUtilities.findRangeBounds(arg0, false);
        assertNotNull(findRangeBounds);
        assertEquals((-2380.8977273245), findRangeBounds.getCentralValue(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindRangeBoundsTaking1And1ReturningRangeWhereGetLengthIsZeroAndRangeWhereGetLowerBoundIsPositive() throws Throwable  {
        double[][] arg2 = new double[3][5];
        double[] doubleArray = new double[1];
        doubleArray[0] = 632.942636342255;
        arg2[0] = doubleArray;
        arg2[1] = arg2[0];
        arg2[2] = doubleArray;
        CategoryDataset arg0 = DatasetUtilities.createCategoryDataset("+'U{I3<'.", "+'U{I3<'.", arg2);
        Range findRangeBounds = DatasetUtilities.findRangeBounds(arg0, false);
        assertNotNull(findRangeBounds);
        assertEquals(632.942636342255, findRangeBounds.getLowerBound(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindRangeBoundsTaking1And1ReturningRangeWhereGetLowerBoundIsZero() throws Throwable  {
        double[][] arg2 = new double[3][5];
        double[] doubleArray = new double[1];
        doubleArray[0] = 632.942636342255;
        arg2[0] = doubleArray;
        CategoryDataset arg0 = DatasetUtilities.createCategoryDataset("+'U{I3<'.", "+'U{I3<'.", arg2);
        Range findRangeBounds = DatasetUtilities.findRangeBounds(arg0, false);
        assertEquals(0.0, findRangeBounds.getLowerBound(), 0.01);
        assertEquals(316.4713181711275, findRangeBounds.getCentralValue(), 0.01);
        assertNotNull(findRangeBounds);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindRangeBoundsTaking1And1ReturningRangeWhereGetUpperBoundIsZero() throws Throwable  {
        double[][] arg2 = new double[1][4];
        double[] doubleArray = new double[2];
        doubleArray[0] = (-4269.1824318);
        arg2[0] = doubleArray;
        CategoryDataset arg0 = DatasetUtilities.createCategoryDataset("sLcPp9/vtN@-[", "", arg2);
        Range findRangeBounds = DatasetUtilities.findRangeBounds(arg0, false);
        assertNotNull(findRangeBounds);
        assertEquals(4269.1824318, findRangeBounds.getLength(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindRangeBoundsTakingCategoryDatasetReturningRangeWhereGetLowerBoundIsPositive() throws Throwable  {
        double[][] arg2 = new double[4][3];
        double[] doubleArray = new double[6];
        doubleArray[0] = (double) 37;
        doubleArray[1] = (double) 37;
        doubleArray[2] = (double) 37;
        doubleArray[3] = (double) 37;
        doubleArray[4] = (double) 37;
        doubleArray[5] = (double) 37;
        arg2[0] = doubleArray;
        arg2[1] = doubleArray;
        arg2[2] = arg2[0];
        arg2[3] = arg2[0];
        CategoryDataset arg0 = DatasetUtilities.createCategoryDataset("yPt}O^tR{GMK0a?", "org.jfree.data.general.DatasetUtilities", arg2);
        Range findRangeBounds = DatasetUtilities.findRangeBounds(arg0);
        assertEquals(37.0, findRangeBounds.getCentralValue(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindRangeBoundsTakingCategoryDatasetReturningRangeWhereGetCentralValueIsZero() throws Throwable  {
        double[][] arg2 = new double[7][3];
        CategoryDataset arg0 = DatasetUtilities.createCategoryDataset("yPt}O^tR{GMK0a?", (String) null, arg2);
        Range findRangeBounds = DatasetUtilities.findRangeBounds(arg0);
        assertNotNull(findRangeBounds);
        assertEquals(0.0, findRangeBounds.getLowerBound(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindRangeBoundsTakingCategoryDataset() throws Throwable  {
        double[][] arg2 = new double[4][3];
        double[] doubleArray = new double[6];
        doubleArray[0] = (double) 37;
        arg2[0] = doubleArray;
        CategoryDataset arg0 = DatasetUtilities.createCategoryDataset("yPt}O^tR{GMK0a?", "org.jfree.data.general.DatasetUtilities", arg2);
        Range findRangeBounds = DatasetUtilities.findRangeBounds(arg0);
        assertNotNull(findRangeBounds);
        assertEquals(37.0, findRangeBounds.getUpperBound(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindRangeBoundsTakingCategoryDatasetReturningRangeWhereGetCentralValueIsNegative() throws Throwable  {
        double[][] arg2 = new double[1][6];
        double[] doubleArray = new double[6];
        doubleArray[0] = (-162.40716701125);
        arg2[0] = doubleArray;
        CategoryDataset arg0 = DatasetUtilities.createCategoryDataset("vNkgXX07\",", "", arg2);
        Range findRangeBounds = DatasetUtilities.findRangeBounds(arg0);
        assertNotNull(findRangeBounds);
        assertEquals((-81.203583505625), findRangeBounds.getCentralValue(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindCumulativeRangeBoundsReturningRangeWhereGetUpperBoundIsPositive() throws Throwable  {
        double[][] arg2 = new double[6][2];
        double[] doubleArray = new double[5];
        doubleArray[0] = Double.NaN;
        arg2[2] = doubleArray;
        CategoryDataset arg0 = DatasetUtilities.createCategoryDataset("8M|S-HsLV+", "8M|S-HsLV+", arg2);
        Range findCumulativeRangeBounds = DatasetUtilities.findCumulativeRangeBounds(arg0);
        assertNotNull(findCumulativeRangeBounds);
        assertEquals(Double.NaN, findCumulativeRangeBounds.getLowerBound(), 0.01);
        assertEquals(Double.NaN, findCumulativeRangeBounds.getUpperBound(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindCumulativeRangeBounds() throws Throwable  {
        double[][] arg2 = new double[3][3];
        double[] doubleArray = new double[1];
        doubleArray[0] = (-2577.937);
        arg2[0] = doubleArray;
        CategoryDataset arg0 = DatasetUtilities.createCategoryDataset("yPt}O^tR{GMK0a?", "", arg2);
        Range findCumulativeRangeBounds = DatasetUtilities.findCumulativeRangeBounds(arg0);
        assertEquals(0.0, findCumulativeRangeBounds.getUpperBound(), 0.01);
        assertEquals((-1288.9685), findCumulativeRangeBounds.getCentralValue(), 0.01);
        assertNotNull(findCumulativeRangeBounds);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindStackedRangeBoundsTaking1And1ReturningNullAndFindStackedRangeBoundsTaking1And10() throws Throwable  {
        DefaultCategoryDataset arg0 = new DefaultCategoryDataset();
        Range findStackedRangeBounds = DatasetUtilities.findStackedRangeBounds((CategoryDataset) arg0, 2154.343);
        assertNull(findStackedRangeBounds);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreateCategoryDatasetTaking2StringsAnd1AndFindStackedRangeBoundsTaking1And10() throws Throwable  {
        double[][] arg2 = new double[3][8];
        double[] doubleArray = new double[9];
        doubleArray[5] = Double.POSITIVE_INFINITY;
        arg2[0] = doubleArray;
        CategoryDataset arg0 = DatasetUtilities.createCategoryDataset("@tP15?$W", "x", arg2);
        Range findStackedRangeBounds = DatasetUtilities.findStackedRangeBounds(arg0, Double.POSITIVE_INFINITY);
        assertNotNull(findStackedRangeBounds);
        assertEquals(Double.POSITIVE_INFINITY, findStackedRangeBounds.getLowerBound(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testIterateCategoryRangeBoundsReturningNull() throws Throwable  {
        TaskSeriesCollection arg0 = new TaskSeriesCollection();
        Range iterateCategoryRangeBounds = DatasetUtilities.iterateCategoryRangeBounds(arg0, true);
        assertNull(iterateCategoryRangeBounds);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreateCategoryDatasetTaking2StringsAnd1WithNullAndIterateCategoryRangeBoundsWithNonNull() throws Throwable  {
        double[][] arg2 = new double[3][1];
        CategoryDataset arg0 = DatasetUtilities.createCategoryDataset((String) null, (String) null, arg2);
        Range iterateCategoryRangeBounds = DatasetUtilities.iterateCategoryRangeBounds(arg0, true);
        assertNotNull(iterateCategoryRangeBounds);
        assertEquals(0.0, iterateCategoryRangeBounds.getUpperBound(), 0.01);
        assertEquals(0.0, iterateCategoryRangeBounds.getLowerBound(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindRangeBoundsTaking1And1() throws Throwable  {
        TimeSeriesCollection arg0 = new TimeSeriesCollection();
        Range findRangeBounds = DatasetUtilities.findRangeBounds((XYDataset) arg0, true);
        assertNull(findRangeBounds);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testIterateDomainBoundsTaking2Arguments() throws Throwable  {
        DefaultXYZDataset arg0 = new DefaultXYZDataset();
        Range iterateDomainBounds = DatasetUtilities.iterateDomainBounds((XYDataset) arg0, true);
        assertNull(iterateDomainBounds);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindDomainBoundsTaking2Arguments() throws Throwable  {
        XYSeriesCollection arg0 = new XYSeriesCollection();
        Range findDomainBounds = DatasetUtilities.findDomainBounds((XYDataset) arg0, true);
        assertNull(findDomainBounds);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreatePieDatasetForColumnTaking1And1AndCreatePieDatasetForColumnTaking1And10() throws Throwable  {
        TaskSeriesCollection arg0 = new TaskSeriesCollection();
        PieDataset createPieDatasetForColumn = DatasetUtilities.createPieDatasetForColumn((CategoryDataset) arg0, 1);
        assertEquals(0, createPieDatasetForColumn.getItemCount());
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCalculatePieDatasetTotal() throws Throwable  {
        DefaultPieDataset arg0 = new DefaultPieDataset();
        Short arg1 = new Short((short)100);
        arg0.setValue((Comparable) "Q", (Number) arg1);
        double calculatePieDatasetTotal = DatasetUtilities.calculatePieDatasetTotal(arg0);
        assertEquals(100.0, calculatePieDatasetTotal, 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindCumulativeRangeBoundsReturningRangeWhereGetLowerBoundIsZero() throws Throwable  {
        double[][] arg2 = new double[3][3];
        double[] doubleArray = new double[1];
        arg2[0] = doubleArray;
        CategoryDataset arg0 = DatasetUtilities.createCategoryDataset("yPt}O^tR{GMK0a?", "", arg2);
        Range findCumulativeRangeBounds = DatasetUtilities.findCumulativeRangeBounds(arg0);
        assertNotNull(findCumulativeRangeBounds);
        assertEquals(0.0, findCumulativeRangeBounds.getLowerBound(), 0.01);
        assertEquals(0.0, findCumulativeRangeBounds.getUpperBound(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindCumulativeRangeBoundsThrowsIllegalArgumentException() throws Throwable  {
        // Undeclared exception!
        try { 
          DatasetUtilities.findCumulativeRangeBounds((CategoryDataset) null);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // Null 'dataset' argument.
           //
           verifyException("org.jfree.data.general.DatasetUtilities", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindCumulativeRangeBoundsReturningNull() throws Throwable  {
        TaskSeriesCollection arg0 = new TaskSeriesCollection();
        Range findCumulativeRangeBounds = DatasetUtilities.findCumulativeRangeBounds(arg0);
        assertNull(findCumulativeRangeBounds);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindStackedRangeBoundsTaking1And1() throws Throwable  {
        CategoryTableXYDataset arg0 = new CategoryTableXYDataset();
        arg0.add(1110.0, 1110.0, "org.jfree.data.UnknownKeyException");
        Range findStackedRangeBounds = DatasetUtilities.findStackedRangeBounds((TableXYDataset) arg0, (-1.0));
        assertEquals(1109.0, findStackedRangeBounds.getUpperBound(), 0.01);
        assertNotNull(findStackedRangeBounds);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindStackedRangeBoundsTaking1And1ReturningRangeWhereGetLowerBoundIsPositive() throws Throwable  {
        CategoryTableXYDataset arg0 = new CategoryTableXYDataset();
        arg0.add(1.5, (-248.01083), "~sX]tu*`ld'U&z>");
        Range findStackedRangeBounds = DatasetUtilities.findStackedRangeBounds((TableXYDataset) arg0, 3004.0);
        assertEquals(2755.98917, findStackedRangeBounds.getLowerBound(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindStackedRangeBoundsTaking1And1ThrowsIllegalArgumentExceptionAndFindStackedRangeBoundsTaking1And10() throws Throwable  {
        // Undeclared exception!
        try { 
          DatasetUtilities.findStackedRangeBounds((TableXYDataset) null, (-2332.5));
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // Null 'dataset' argument.
           //
           verifyException("org.jfree.data.general.DatasetUtilities", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindMaximumStackedRangeValueWithNonNull() throws Throwable  {
        double[][] arg2 = new double[2][1];
        double[] doubleArray = new double[7];
        doubleArray[5] = 1.0;
        arg2[0] = doubleArray;
        CategoryDataset arg0 = DatasetUtilities.createCategoryDataset("BYt*~", (String) null, arg2);
        Number findMaximumStackedRangeValue = DatasetUtilities.findMaximumStackedRangeValue(arg0);
        assertEquals(1.0, findMaximumStackedRangeValue);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindMaximumStackedRangeValueReturningNull() throws Throwable  {
        Number findMaximumStackedRangeValue = DatasetUtilities.findMaximumStackedRangeValue((CategoryDataset) null);
        assertNull(findMaximumStackedRangeValue);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindMinimumStackedRangeValueWithNonNull() throws Throwable  {
        DefaultKeyedValues2DDataset arg0 = new DefaultKeyedValues2DDataset();
        Integer arg2 = new Integer((-3088));
        arg0.addValue((Number) arg2, (Comparable) arg2, (Comparable) arg2);
        Number findMinimumStackedRangeValue = DatasetUtilities.findMinimumStackedRangeValue(arg0);
        assertEquals((-3088.0), findMinimumStackedRangeValue);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindMinimumStackedRangeValue() throws Throwable  {
        double[][] arg1 = new double[1][1];
        DefaultIntervalCategoryDataset arg0 = new DefaultIntervalCategoryDataset(arg1, arg1);
        Number findMinimumStackedRangeValue = DatasetUtilities.findMinimumStackedRangeValue(arg0);
        assertEquals(0.0, findMinimumStackedRangeValue);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindMinimumStackedRangeValueThrowsIllegalArgumentException() throws Throwable  {
        Number[][] arg1 = new Number[4][7];
        DefaultIntervalCategoryDataset arg0 = new DefaultIntervalCategoryDataset(arg1, arg1);
        // Undeclared exception!
        try { 
          DatasetUtilities.findMinimumStackedRangeValue(arg0);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // DefaultIntervalCategoryDataset.getValue(): series index out of range.
           //
           verifyException("org.jfree.data.category.DefaultIntervalCategoryDataset", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindMinimumStackedRangeValueReturningNull() throws Throwable  {
        Number findMinimumStackedRangeValue = DatasetUtilities.findMinimumStackedRangeValue((CategoryDataset) null);
        assertNull(findMinimumStackedRangeValue);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindStackedRangeBoundsTaking1And1ReturningRangeWhereGetCentralValueIsNegative1() throws Throwable  {
        double[][] arg2 = new double[2][8];
        double[] doubleArray = new double[4];
        doubleArray[0] = (-208.0232075022);
        arg2[0] = doubleArray;
        CategoryDataset arg0 = DatasetUtilities.createCategoryDataset("yPt}O^tR{GMK0a?", "[Z\"kq/R", arg2);
        KeyToGroupMap arg1 = new KeyToGroupMap();
        Range findStackedRangeBounds = DatasetUtilities.findStackedRangeBounds(arg0, arg1);
        assertEquals((-104.0116037511), findStackedRangeBounds.getCentralValue(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindStackedRangeBoundsTaking1And1ReturningRangeWhereGetCentralValueIsPositive() throws Throwable  {
        double[][] arg2 = new double[4][3];
        double[] doubleArray = new double[6];
        doubleArray[0] = (double) 37;
        arg2[0] = doubleArray;
        CategoryDataset arg0 = DatasetUtilities.createCategoryDataset("yPt}O^tR{GMK0a?", "org.jfree.data.general.DatasetUtilities", arg2);
        KeyToGroupMap arg1 = new KeyToGroupMap();
        Range findStackedRangeBounds = DatasetUtilities.findStackedRangeBounds(arg0, arg1);
        assertEquals(37.0, findStackedRangeBounds.getUpperBound(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindStackedRangeBoundsTaking1And1ReturningRangeWhereGetCentralValueIsZero() throws Throwable  {
        double[][] arg2 = new double[7][3];
        double[] doubleArray = new double[1];
        arg2[0] = doubleArray;
        CategoryDataset arg0 = DatasetUtilities.createCategoryDataset("yPt}O^tR{GMK0a?", (String) null, arg2);
        KeyToGroupMap arg1 = new KeyToGroupMap();
        Range findStackedRangeBounds = DatasetUtilities.findStackedRangeBounds(arg0, arg1);
        assertEquals(0.0, findStackedRangeBounds.getLength(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindStackedRangeBoundsTaking1And1ReturningNullAndFindStackedRangeBoundsTaking1And11() throws Throwable  {
        KeyToGroupMap arg1 = new KeyToGroupMap();
        Range findStackedRangeBounds = DatasetUtilities.findStackedRangeBounds((CategoryDataset) null, arg1);
        assertNull(findStackedRangeBounds);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreateCategoryDatasetTaking2StringsAnd1AndFindStackedRangeBoundsTaking1And11() throws Throwable  {
        double[][] arg2 = new double[3][8];
        double[] doubleArray = new double[9];
        doubleArray[0] = (-675.0778087526);
        arg2[0] = doubleArray;
        CategoryDataset arg0 = DatasetUtilities.createCategoryDataset("@tP15?$W", "x", arg2);
        Range findStackedRangeBounds = DatasetUtilities.findStackedRangeBounds(arg0, Double.POSITIVE_INFINITY);
        assertNotNull(findStackedRangeBounds);
        assertEquals(Double.POSITIVE_INFINITY, findStackedRangeBounds.getLowerBound(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindStackedRangeBoundsTakingCategoryDatasetReturningRangeWhereGetUpperBoundIsPositive() throws Throwable  {
        double[][] arg2 = new double[1][2];
        double[] doubleArray = new double[9];
        doubleArray[0] = 1.123452E31;
        arg2[0] = doubleArray;
        CategoryDataset arg0 = DatasetUtilities.createCategoryDataset("", "", arg2);
        Range findStackedRangeBounds = DatasetUtilities.findStackedRangeBounds(arg0);
        assertEquals(0.0, findStackedRangeBounds.getLowerBound(), 0.01);
        assertEquals(1.123452E31, findStackedRangeBounds.getUpperBound(), 0.01);
        assertNotNull(findStackedRangeBounds);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindStackedRangeBoundsTaking1And1ReturningRangeWhereGetLengthIsZero() throws Throwable  {
        double[][] arg2 = new double[5][1];
        CategoryDataset arg0 = DatasetUtilities.createCategoryDataset((String) null, (String) null, arg2);
        Range findStackedRangeBounds = DatasetUtilities.findStackedRangeBounds(arg0, 386.13369999999986);
        assertEquals(0.0, findStackedRangeBounds.getLength(), 0.01);
        assertNotNull(findStackedRangeBounds);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindStackedRangeBoundsTaking1And1ThrowsIllegalArgumentExceptionAndFindStackedRangeBoundsTaking1And11() throws Throwable  {
        // Undeclared exception!
        try { 
          DatasetUtilities.findStackedRangeBounds((CategoryDataset) null, 739.750792);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // Null 'dataset' argument.
           //
           verifyException("org.jfree.data.general.DatasetUtilities", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindMaximumRangeValueTakingXYDatasetThrowsIllegalArgumentException() throws Throwable  {
        // Undeclared exception!
        try { 
          DatasetUtilities.findMaximumRangeValue((XYDataset) null);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // Null 'dataset' argument.
           //
           verifyException("org.jfree.data.general.DatasetUtilities", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreateCategoryDatasetTaking2StringsAnd1WithNull() throws Throwable  {
        double[][] arg2 = new double[20][3];
        double[] doubleArray = new double[1];
        arg2[0] = doubleArray;
        CategoryDataset arg0 = DatasetUtilities.createCategoryDataset("yPt}O^tR{GLK0]a?", (String) null, arg2);
        Number findMaximumRangeValue = DatasetUtilities.findMaximumRangeValue(arg0);
        assertEquals(0.0, findMaximumRangeValue);
        assertNotNull(findMaximumRangeValue);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindMaximumRangeValueTakingCategoryDataset() throws Throwable  {
        double[][] arg1 = new double[1][7];
        DefaultIntervalCategoryDataset arg0 = new DefaultIntervalCategoryDataset(arg1, arg1);
        Number findMaximumRangeValue = DatasetUtilities.findMaximumRangeValue((CategoryDataset) arg0);
        assertNotNull(findMaximumRangeValue);
        assertEquals(0.0, findMaximumRangeValue);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindMaximumRangeValueTakingCategoryDatasetWithNonNull() throws Throwable  {
        DefaultStatisticalCategoryDataset arg0 = new DefaultStatisticalCategoryDataset();
        Number findMaximumRangeValue = DatasetUtilities.findMaximumRangeValue((CategoryDataset) arg0);
        assertEquals(Double.NaN, findMaximumRangeValue);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindMaximumRangeValueTakingCategoryDatasetThrowsIllegalArgumentException() throws Throwable  {
        // Undeclared exception!
        try { 
          DatasetUtilities.findMaximumRangeValue((CategoryDataset) null);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // Null 'dataset' argument.
           //
           verifyException("org.jfree.data.general.DatasetUtilities", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindMaximumRangeValueTakingCategoryDatasetReturningNull() throws Throwable  {
        DefaultCategoryDataset arg0 = new DefaultCategoryDataset();
        Number findMaximumRangeValue = DatasetUtilities.findMaximumRangeValue((CategoryDataset) arg0);
        assertNull(findMaximumRangeValue);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindMinimumRangeValueTakingXYDatasetThrowsIllegalArgumentException() throws Throwable  {
        // Undeclared exception!
        try { 
          DatasetUtilities.findMinimumRangeValue((XYDataset) null);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // Null 'dataset' argument.
           //
           verifyException("org.jfree.data.general.DatasetUtilities", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindMinimumRangeValueTakingXYDataset() throws Throwable  {
        Millisecond arg2 = new Millisecond();
        DynamicTimeSeriesCollection arg0 = new DynamicTimeSeriesCollection(999, 181, arg2);
        Number findMinimumRangeValue = DatasetUtilities.findMinimumRangeValue((XYDataset) arg0);
        assertEquals(0.0, findMinimumRangeValue);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreateCategoryDatasetTaking2StringsAnd1WithEmptyString() throws Throwable  {
        double[][] arg2 = new double[3][2];
        double[] doubleArray = new double[3];
        arg2[0] = doubleArray;
        CategoryDataset arg0 = DatasetUtilities.createCategoryDataset("", "", arg2);
        Number findMinimumRangeValue = DatasetUtilities.findMinimumRangeValue(arg0);
        assertNotNull(findMinimumRangeValue);
        assertEquals(0.0, findMinimumRangeValue);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindMinimumRangeValueTakingCategoryDataset() throws Throwable  {
        double[][] arg1 = new double[1][1];
        DefaultIntervalCategoryDataset arg0 = new DefaultIntervalCategoryDataset(arg1, arg1);
        Number findMinimumRangeValue = DatasetUtilities.findMinimumRangeValue((CategoryDataset) arg0);
        assertNotNull(findMinimumRangeValue);
        assertEquals(0.0, findMinimumRangeValue);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindMinimumRangeValueTakingCategoryDatasetWithNonNull() throws Throwable  {
        DefaultStatisticalCategoryDataset arg0 = new DefaultStatisticalCategoryDataset();
        Number findMinimumRangeValue = DatasetUtilities.findMinimumRangeValue((CategoryDataset) arg0);
        assertEquals(Double.NaN, findMinimumRangeValue);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindMinimumRangeValueTakingCategoryDatasetThrowsIllegalArgumentException() throws Throwable  {
        // Undeclared exception!
        try { 
          DatasetUtilities.findMinimumRangeValue((CategoryDataset) null);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // Null 'dataset' argument.
           //
           verifyException("org.jfree.data.general.DatasetUtilities", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindMinimumRangeValueTakingCategoryDatasetReturningNull() throws Throwable  {
        DefaultCategoryDataset arg0 = new DefaultCategoryDataset();
        Number findMinimumRangeValue = DatasetUtilities.findMinimumRangeValue((CategoryDataset) arg0);
        assertNull(findMinimumRangeValue);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindMaximumDomainValueThrowsNullPointerException() throws Throwable  {
        OHLCDataItem[] arg1 = new OHLCDataItem[6];
        DefaultOHLCDataset arg0 = new DefaultOHLCDataset((Comparable) null, arg1);
        // Undeclared exception!
        try { 
          DatasetUtilities.findMaximumDomainValue(arg0);
          fail("Expecting exception: NullPointerException");
        
        } catch(NullPointerException e) {
           //
           // no message in exception (getMessage() returned null)
           //
           verifyException("org.jfree.data.xy.DefaultOHLCDataset", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindMaximumDomainValueThrowsIllegalArgumentException() throws Throwable  {
        // Undeclared exception!
        try { 
          DatasetUtilities.findMaximumDomainValue((XYDataset) null);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // Null 'dataset' argument.
           //
           verifyException("org.jfree.data.general.DatasetUtilities", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindMaximumDomainValue() throws Throwable  {
        TimeTableXYDataset arg0 = new TimeTableXYDataset();
        Number findMaximumDomainValue = DatasetUtilities.findMaximumDomainValue(arg0);
        assertEquals(Double.NaN, findMaximumDomainValue);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindMinimumDomainValueThrowsIllegalArgumentException() throws Throwable  {
        // Undeclared exception!
        try { 
          DatasetUtilities.findMinimumDomainValue((XYDataset) null);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // Null 'dataset' argument.
           //
           verifyException("org.jfree.data.general.DatasetUtilities", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindRangeBoundsTakingXYDatasetReturningRangeWhereGetUpperBoundIsNegative() throws Throwable  {
        CategoryTableXYDataset arg0 = new CategoryTableXYDataset();
        arg0.add(1.5, (-248.01083), "~sX]tu*`ld'U&z>");
        Range findRangeBounds = DatasetUtilities.findRangeBounds((XYDataset) arg0);
        assertNotNull(findRangeBounds);
        assertEquals((-248.01083), findRangeBounds.getCentralValue(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testIterateCategoryRangeBounds() throws Throwable  {
        double[][] arg1 = new double[9][2];
        DefaultIntervalCategoryDataset arg0 = new DefaultIntervalCategoryDataset(arg1, arg1);
        Range iterateCategoryRangeBounds = DatasetUtilities.iterateCategoryRangeBounds(arg0, true);
        assertEquals(0.0, iterateCategoryRangeBounds.getUpperBound(), 0.01);
        assertNotNull(iterateCategoryRangeBounds);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindRangeBoundsTaking1And1ReturningNull() throws Throwable  {
        DefaultCategoryDataset arg0 = new DefaultCategoryDataset();
        Range findRangeBounds = DatasetUtilities.findRangeBounds((CategoryDataset) arg0, true);
        assertNull(findRangeBounds);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindRangeBoundsTaking1And1ThrowsIllegalArgumentExceptionAndFindRangeBoundsTaking1And10() throws Throwable  {
        // Undeclared exception!
        try { 
          DatasetUtilities.findRangeBounds((XYDataset) null, true);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // Null 'dataset' argument.
           //
           verifyException("org.jfree.data.general.DatasetUtilities", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindRangeBoundsTaking1And1ReturningRangeWhereGetCentralValueIsZero() throws Throwable  {
        DefaultBoxAndWhiskerCategoryDataset arg0 = new DefaultBoxAndWhiskerCategoryDataset();
        Range findRangeBounds = DatasetUtilities.findRangeBounds((CategoryDataset) arg0, true);
        assertEquals(0.0, findRangeBounds.getCentralValue(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindRangeBoundsTaking1And1ThrowsIllegalArgumentExceptionAndFindRangeBoundsTaking1And11() throws Throwable  {
        // Undeclared exception!
        try { 
          DatasetUtilities.findRangeBounds((CategoryDataset) null, true);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // Null 'dataset' argument.
           //
           verifyException("org.jfree.data.general.DatasetUtilities", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testIterateDomainBoundsTaking2ArgumentsThrowsIllegalArgumentException() throws Throwable  {
        // Undeclared exception!
        try { 
          DatasetUtilities.iterateDomainBounds((XYDataset) null, true);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // Null 'dataset' argument.
           //
           verifyException("org.jfree.data.general.DatasetUtilities", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindMinimumDomainValue() throws Throwable  {
        CategoryTableXYDataset arg0 = new CategoryTableXYDataset();
        Number findMinimumDomainValue = DatasetUtilities.findMinimumDomainValue(arg0);
        assertEquals(Double.NaN, findMinimumDomainValue);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindDomainBoundsTaking2ArgumentsThrowsIllegalArgumentException() throws Throwable  {
        // Undeclared exception!
        try { 
          DatasetUtilities.findDomainBounds((XYDataset) null, false);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // Null 'dataset' argument.
           //
           verifyException("org.jfree.data.general.DatasetUtilities", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testIsEmptyOrNullTakingXYDataset() throws Throwable  {
        boolean emptyOrNull = DatasetUtilities.isEmptyOrNull((XYDataset) null);
        assertTrue(emptyOrNull);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testIsEmptyOrNullTakingCategoryDataset() throws Throwable  {
        double[][] arg1 = new double[1][1];
        double[] doubleArray = new double[0];
        arg1[0] = doubleArray;
        DefaultIntervalCategoryDataset arg0 = new DefaultIntervalCategoryDataset(arg1, arg1);
        boolean emptyOrNull = DatasetUtilities.isEmptyOrNull((CategoryDataset) arg0);
        assertTrue(emptyOrNull);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testIsEmptyOrNullTakingCategoryDatasetReturningFalse() throws Throwable  {
        double[][] arg1 = new double[1][1];
        DefaultIntervalCategoryDataset arg0 = new DefaultIntervalCategoryDataset(arg1, arg1);
        boolean emptyOrNull = DatasetUtilities.isEmptyOrNull((CategoryDataset) arg0);
        assertFalse(emptyOrNull);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testIsEmptyOrNullTakingCategoryDatasetWithNull() throws Throwable  {
        boolean emptyOrNull = DatasetUtilities.isEmptyOrNull((CategoryDataset) null);
        assertTrue(emptyOrNull);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testIsEmptyOrNullTakingCategoryDatasetWithNonNull() throws Throwable  {
        DefaultKeyedValues2DDataset arg0 = new DefaultKeyedValues2DDataset();
        boolean emptyOrNull = DatasetUtilities.isEmptyOrNull((CategoryDataset) arg0);
        assertTrue(emptyOrNull);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testIsEmptyOrNullTakingPieDatasetWithNull() throws Throwable  {
        boolean emptyOrNull = DatasetUtilities.isEmptyOrNull((PieDataset) null);
        assertTrue(emptyOrNull);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testIsEmptyOrNullTakingPieDataset() throws Throwable  {
        DefaultKeyedValuesDataset arg0 = new DefaultKeyedValuesDataset();
        boolean emptyOrNull = DatasetUtilities.isEmptyOrNull((PieDataset) arg0);
        assertTrue(emptyOrNull);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testSampleFunction2D() throws Throwable  {
        NormalDistributionFunction2D arg0 = new NormalDistributionFunction2D(1.0, Double.POSITIVE_INFINITY);
        Millisecond arg4 = new Millisecond();
        XYSeriesCollection sampleFunction2D = (XYSeriesCollection)DatasetUtilities.sampleFunction2D(arg0, (-2111.02938441), (-1.0), 819, arg4);
        assertFalse(sampleFunction2D.isAutoWidth());
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testSampleFunction2DThrowsIllegalArgumentException() throws Throwable  {
        NormalDistributionFunction2D arg0 = new NormalDistributionFunction2D((-9), (-9));
        Millisecond arg4 = new Millisecond();
        // Undeclared exception!
        try { 
          DatasetUtilities.sampleFunction2D(arg0, Double.POSITIVE_INFINITY, (-3185.18084029226), 1030, arg4);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // Requires 'start' < 'end'.
           //
           verifyException("org.jfree.data.general.DatasetUtilities", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testSampleFunction2DWithZero() throws Throwable  {
        NormalDistributionFunction2D arg0 = new NormalDistributionFunction2D((-9), (-9));
        Millisecond arg4 = new Millisecond();
        // Undeclared exception!
        try { 
          DatasetUtilities.sampleFunction2D(arg0, 999, Double.POSITIVE_INFINITY, 0, arg4);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // Requires 'samples' > 1
           //
           verifyException("org.jfree.data.general.DatasetUtilities", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testSampleFunction2DWithNull() throws Throwable  {
        TaskSeriesCollection arg0 = new TaskSeriesCollection();
        Double arg4 = (Double)DatasetUtilities.findMinimumStackedRangeValue(arg0);
        // Undeclared exception!
        try { 
          DatasetUtilities.sampleFunction2D((Function2D) null, (-3762.8684751), (-3762.8684751), 809, arg4);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // Null 'f' argument.
           //
           verifyException("org.jfree.data.general.DatasetUtilities", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testSampleFunction2DWithNonNullAndNull() throws Throwable  {
        LineFunction2D arg0 = new LineFunction2D(3365.19712123, 0.5);
        // Undeclared exception!
        try { 
          DatasetUtilities.sampleFunction2D(arg0, (-1.0), 3365.19712123, 2, (Comparable) null);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // Null 'seriesKey' argument.
           //
           verifyException("org.jfree.data.general.DatasetUtilities", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreateCategoryDatasetTaking2Arguments() throws Throwable  {
        DefaultPieDataset arg0 = new DefaultPieDataset();
        PieDataset arg1 = DatasetUtilities.createConsolidatedPieDataset((PieDataset) arg0, (Comparable) "", (double) (-159), (-159));
        CategoryDataset createCategoryDataset = DatasetUtilities.createCategoryDataset((Comparable) "", (KeyedValues) arg1);
        assertNotNull(createCategoryDataset);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreateCategoryDatasetTaking2ArgumentsWithNull0() throws Throwable  {
        DefaultPieDataset arg1 = new DefaultPieDataset();
        // Undeclared exception!
        try { 
          DatasetUtilities.createCategoryDataset((Comparable) null, (KeyedValues) arg1);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // Null 'rowKey' argument.
           //
           verifyException("org.jfree.data.general.DatasetUtilities", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreateCategoryDatasetTaking2ArgumentsWithNull1() throws Throwable  {
        MockDate arg0 = new MockDate();
        // Undeclared exception!
        try { 
          DatasetUtilities.createCategoryDataset((Comparable) arg0, (KeyedValues) null);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // Null 'rowData' argument.
           //
           verifyException("org.jfree.data.general.DatasetUtilities", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreateCategoryDatasetTaking2ComparableArraysAnd1() throws Throwable  {
        double[][] arg2 = new double[1][1];
        Comparable<Object>[] arg1 = (Comparable<Object>[]) Array.newInstance(Comparable.class, 1);
        SpreadsheetDate spreadsheetDate = new SpreadsheetDate(2893);
        Date arg0 = spreadsheetDate.toDate();
        Month month = new Month(arg0);
        arg1[0] = (Comparable<Object>) month;
        CategoryDataset createCategoryDataset = DatasetUtilities.createCategoryDataset(arg1, arg1, arg2);
        assertNotNull(createCategoryDataset);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreateCategoryDatasetTaking2ComparableArraysAnd1WithNonEmptyArray() throws Throwable  {
        Comparable<Object>[] arg1 = (Comparable<Object>[]) Array.newInstance(Comparable.class, 1);
        double[][] arg2 = new double[1][5];
        // Undeclared exception!
        try { 
          DatasetUtilities.createCategoryDataset(arg1, arg1, arg2);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // The number of column keys does not match the number of columns in the data array.
           //
           verifyException("org.jfree.data.general.DatasetUtilities", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreateCategoryDatasetTaking2ComparableArraysAnd1ThrowsIllegalArgumentException0() throws Throwable  {
        Millisecond millisecond = new Millisecond();
        Comparable<Object>[] arg1 = (Comparable<Object>[]) Array.newInstance(Comparable.class, 2);
        arg1[0] = (Comparable<Object>) millisecond;
        arg1[1] = (Comparable<Object>) millisecond;
        double[][] arg2 = new double[0][6];
        // Undeclared exception!
        try { 
          DatasetUtilities.createCategoryDataset(arg1, arg1, arg2);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // Duplicate items in 'rowKeys'.
           //
           verifyException("org.jfree.data.general.DatasetUtilities", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreateCategoryDatasetTaking2ComparableArraysAnd1ThrowsIllegalArgumentException1() throws Throwable  {
        Comparable<Object>[] arg1 = (Comparable<Object>[]) Array.newInstance(Comparable.class, 1);
        double[][] arg2 = new double[0][5];
        // Undeclared exception!
        try { 
          DatasetUtilities.createCategoryDataset(arg1, arg1, arg2);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // The number of row keys does not match the number of rows in the data array.
           //
           verifyException("org.jfree.data.general.DatasetUtilities", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreateCategoryDatasetTaking2ComparableArraysAnd1WithNullAndEmptyArray() throws Throwable  {
        double[][] arg2 = new double[0][4];
        // Undeclared exception!
        try { 
          DatasetUtilities.createCategoryDataset((Comparable[]) null, (Comparable[]) null, arg2);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // Null 'rowKeys' argument.
           //
           verifyException("org.jfree.data.general.DatasetUtilities", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreateCategoryDatasetTaking2ComparableArraysAnd1WithNullAndNonEmptyArray() throws Throwable  {
        Comparable<Object>[] arg0 = (Comparable<Object>[]) Array.newInstance(Comparable.class, 1);
        // Undeclared exception!
        try { 
          DatasetUtilities.createCategoryDataset(arg0, (Comparable[]) null, (double[][]) null);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // Null 'columnKeys' argument.
           //
           verifyException("org.jfree.data.general.DatasetUtilities", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreateCategoryDatasetTaking2StringsAnd1() throws Throwable  {
        Number[][] arg2 = new Number[2][7];
        CategoryDataset arg0 = DatasetUtilities.createCategoryDataset("Q", "Q", arg2);
        Range findStackedRangeBounds = DatasetUtilities.findStackedRangeBounds(arg0);
        assertEquals(0.0, findStackedRangeBounds.getUpperBound(), 0.01);
        assertNotNull(findStackedRangeBounds);
        assertEquals(0.0, findStackedRangeBounds.getLowerBound(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreateConsolidatedPieDatasetTaking4Arguments() throws Throwable  {
        DefaultPieDataset arg0 = new DefaultPieDataset();
        Short arg1 = new Short((short)100);
        arg0.setValue((Comparable) "Q", (Number) arg1);
        PieDataset createConsolidatedPieDataset = DatasetUtilities.createConsolidatedPieDataset((PieDataset) arg0, (Comparable) "Q", (double) (-144), (-144));
        assertNotSame(arg0, createConsolidatedPieDataset);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreatePieDatasetForColumnTaking1And1ThrowsIllegalArgumentException() throws Throwable  {
        double[][] arg1 = new double[1][1];
        DefaultIntervalCategoryDataset arg0 = new DefaultIntervalCategoryDataset(arg1, arg1);
        // Undeclared exception!
        try { 
          DatasetUtilities.createPieDatasetForColumn((CategoryDataset) arg0, (-876));
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // DefaultIntervalCategoryDataset.getValue(): category index out of range.
           //
           verifyException("org.jfree.data.category.DefaultIntervalCategoryDataset", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreatePieDatasetForRowTaking1And1ThrowsIndexOutOfBoundsException() throws Throwable  {
        double[][] arg2 = new double[1][3];
        CategoryDataset arg0 = DatasetUtilities.createCategoryDataset("yPt}O^tR{GMK0a?", (String) null, arg2);
        // Undeclared exception!
        try { 
          DatasetUtilities.createPieDatasetForRow(arg0, 241);
          fail("Expecting exception: IndexOutOfBoundsException");
        
        } catch(IndexOutOfBoundsException e) {
           //
           // Index: 241, Size: 1
           //
           verifyException("java.util.ArrayList", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreateConsolidatedPieDatasetTaking4ArgumentsWithPositive() throws Throwable  {
        DefaultPieDataset arg0 = new DefaultPieDataset();
        BigInteger arg1 = BigInteger.ONE;
        arg0.setValue((Comparable) "Q", (Number) arg1);
        PieDataset createConsolidatedPieDataset = DatasetUtilities.createConsolidatedPieDataset((PieDataset) arg0, (Comparable) "Q", (double) 4087, 4087);
        assertEquals(1, createConsolidatedPieDataset.getItemCount());
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCalculatePieDatasetTotalThrowsIllegalArgumentException() throws Throwable  {
        // Undeclared exception!
        try { 
          DatasetUtilities.calculatePieDatasetTotal((PieDataset) null);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // Null 'dataset' argument.
           //
           verifyException("org.jfree.data.general.DatasetUtilities", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindDomainBoundsTakingXYDataset() throws Throwable  {
        DefaultXYZDataset arg0 = new DefaultXYZDataset();
        Range findDomainBounds = DatasetUtilities.findDomainBounds((XYDataset) arg0);
        assertNull(findDomainBounds);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindStackedRangeBoundsTakingCategoryDatasetReturningNull() throws Throwable  {
        TaskSeriesCollection arg0 = new TaskSeriesCollection();
        Range findStackedRangeBounds = DatasetUtilities.findStackedRangeBounds((CategoryDataset) arg0);
        assertNull(findStackedRangeBounds);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreateConsolidatedPieDatasetTaking3Arguments() throws Throwable  {
        MockGregorianCalendar arg1 = new MockGregorianCalendar();
        DefaultPieDataset arg0 = new DefaultPieDataset();
        PieDataset createConsolidatedPieDataset = DatasetUtilities.createConsolidatedPieDataset((PieDataset) arg0, (Comparable) arg1, 424.0);
        assertEquals(0, createConsolidatedPieDataset.getItemCount());
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindRangeBoundsTakingXYDatasetReturningNull() throws Throwable  {
        CategoryTableXYDataset arg0 = new CategoryTableXYDataset();
        Range findRangeBounds = DatasetUtilities.findRangeBounds((XYDataset) arg0);
        assertNull(findRangeBounds);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindRangeBoundsTakingCategoryDatasetReturningNull() throws Throwable  {
        TaskSeriesCollection arg0 = new TaskSeriesCollection();
        Range findRangeBounds = DatasetUtilities.findRangeBounds((CategoryDataset) arg0);
        assertNull(findRangeBounds);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testIterateDomainBoundsTakingXYDataset() throws Throwable  {
        SimpleHistogramDataset arg0 = new SimpleHistogramDataset((Comparable) null);
        Range iterateDomainBounds = DatasetUtilities.iterateDomainBounds((XYDataset) arg0);
        assertNull(iterateDomainBounds);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testFindStackedRangeBoundsTakingTableXYDatasetReturningRangeWhereGetCentralValueIsZero() throws Throwable  {
        TimeTableXYDataset arg0 = new TimeTableXYDataset();
        Range findStackedRangeBounds = DatasetUtilities.findStackedRangeBounds((TableXYDataset) arg0);
        assertEquals(0.0, findStackedRangeBounds.getUpperBound(), 0.01);
        assertEquals(0.0, findStackedRangeBounds.getLowerBound(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreatePieDatasetForColumnTaking1And1AndCreatePieDatasetForColumnTaking1And11() throws Throwable  {
        MockDate arg1 = new MockDate((-1230), (-1230), (-1));
        DefaultBoxAndWhiskerCategoryDataset arg0 = new DefaultBoxAndWhiskerCategoryDataset();
        PieDataset createPieDatasetForColumn = DatasetUtilities.createPieDatasetForColumn((CategoryDataset) arg0, (Comparable) arg1);
        assertEquals(0, createPieDatasetForColumn.getItemCount());
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreatePieDatasetForRowTaking1And1() throws Throwable  {
        TaskSeriesCollection arg0 = new TaskSeriesCollection();
        PieDataset createPieDatasetForRow = DatasetUtilities.createPieDatasetForRow((CategoryDataset) arg0, (Comparable) null);
        assertEquals(0, createPieDatasetForRow.getItemCount());
    }
  }
  