content: /*
   * This file was automatically generated by UTestGen and EvoSuite
   * Tue Mar 19 20:17:35 GMT 2024
   */
  
  package org.jfree.chart.plot;
  
  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.awt.Color;
  import java.awt.Paint;
  import org.evosuite.runtime.EvoRunner;
  import org.evosuite.runtime.EvoRunnerParameters;
  import org.jfree.chart.JFreeChart;
  import org.jfree.chart.LegendItemCollection;
  import org.jfree.chart.plot.MultiplePiePlot;
  import org.jfree.data.category.CategoryDataset;
  import org.jfree.data.category.DefaultCategoryDataset;
  import org.jfree.data.category.DefaultIntervalCategoryDataset;
  import org.jfree.data.statistics.DefaultBoxAndWhiskerCategoryDataset;
  import org.jfree.util.TableOrder;
  import org.junit.runner.RunWith;
  
  @RunWith(EvoRunner.class) @EvoRunnerParameters(mockJVMNonDeterminism = true, useVFS = true, useVNET = true, resetStaticState = true, separateClassLoader = true) 
  public class MultiplePiePlot_Original_ESTest extends MultiplePiePlot_Original_ESTest_scaffolding {
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testGetLimitReturningNegative() throws Throwable  {
        DefaultBoxAndWhiskerCategoryDataset arg0 = new DefaultBoxAndWhiskerCategoryDataset();
        MultiplePiePlot multiplePiePlot = new MultiplePiePlot(arg0);
        assertEquals(0.0, multiplePiePlot.getLimit(), 0.01);
        
        multiplePiePlot.setLimit((-1.0));
        double limit = multiplePiePlot.getLimit();
        assertEquals((-1.0), limit, 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testGetLegendItemsReturningLegendItemCollectionWhereGetItemCountIsZero() throws Throwable  {
        MultiplePiePlot multiplePiePlot = new MultiplePiePlot();
        multiplePiePlot.getLegendItems();
        assertEquals(0.0, multiplePiePlot.getLimit(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testGetLegendItems() throws Throwable  {
        Number[][] arg1 = new Number[7][9];
        DefaultIntervalCategoryDataset arg0 = new DefaultIntervalCategoryDataset(arg1, arg1);
        MultiplePiePlot multiplePiePlot = new MultiplePiePlot(arg0);
        multiplePiePlot.getLegendItems();
        LegendItemCollection legendItems = multiplePiePlot.getLegendItems();
        assertEquals(7, legendItems.getItemCount());
        assertEquals(0.0, multiplePiePlot.getLimit(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreatesMultiplePiePlotTakingNoArgumentsAndEqualsAndEqualsReturningFalse() throws Throwable  {
        MultiplePiePlot arg0 = new MultiplePiePlot();
        MultiplePiePlot multiplePiePlot = new MultiplePiePlot();
        assertTrue(multiplePiePlot.equals((Object)arg0));
        
        multiplePiePlot.setBackgroundImageAlignment(2244);
        boolean equals = multiplePiePlot.equals(arg0);
        assertFalse(equals);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testSetAggregatedItemsKey() throws Throwable  {
        MultiplePiePlot arg0 = new MultiplePiePlot();
        MultiplePiePlot multiplePiePlot = new MultiplePiePlot();
        assertTrue(multiplePiePlot.equals((Object)arg0));
        
        multiplePiePlot.setAggregatedItemsKey(1.0F);
        boolean equals = multiplePiePlot.equals(arg0);
        assertFalse(multiplePiePlot.equals((Object)arg0));
        assertFalse(equals);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testEquals() throws Throwable  {
        MultiplePiePlot multiplePiePlot = new MultiplePiePlot();
        MultiplePiePlot arg0 = (MultiplePiePlot)multiplePiePlot.clone();
        arg0.setLimit(10);
        boolean equals = multiplePiePlot.equals(arg0);
        assertEquals(10.0, arg0.getLimit(), 0.01);
        assertFalse(equals);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreatesMultiplePiePlotTakingNoArgumentsAndCallsEquals0() throws Throwable  {
        MultiplePiePlot multiplePiePlot = new MultiplePiePlot();
        MultiplePiePlot arg0 = (MultiplePiePlot)multiplePiePlot.clone();
        boolean equals = multiplePiePlot.equals(arg0);
        assertTrue(equals);
        assertEquals(0.0, arg0.getLimit(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreatesMultiplePiePlotTakingNoArgumentsAndCallsEquals1() throws Throwable  {
        MultiplePiePlot arg0 = new MultiplePiePlot();
        boolean equals = arg0.equals(arg0);
        assertTrue(equals);
        assertEquals(0.0, arg0.getLimit(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testEqualsWithNull() throws Throwable  {
        MultiplePiePlot multiplePiePlot = new MultiplePiePlot((CategoryDataset) null);
        boolean equals = multiplePiePlot.equals((Object) null);
        assertEquals(0.0, multiplePiePlot.getLimit(), 0.01);
        assertFalse(equals);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreatesMultiplePiePlotTakingCategoryDatasetAndCallsSetLimit() throws Throwable  {
        Number[][] arg2 = new Number[1][8];
        Number[] numberArray = new Number[14];
        numberArray[0] = (Number) 1.0F;
        arg2[0] = numberArray;
        DefaultIntervalCategoryDataset arg0 = new DefaultIntervalCategoryDataset((String[]) null, arg2, arg2);
        MultiplePiePlot arg1 = new MultiplePiePlot(arg0);
        arg1.setLimit(2489.03125);
        JFreeChart jFreeChart = new JFreeChart("", arg1);
        jFreeChart.createBufferedImage(484, 12);
        assertEquals(2489.03125, arg1.getLimit(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testCreatesMultiplePiePlotTakingCategoryDataset() throws Throwable  {
        Number[][] arg2 = new Number[13][8];
        Number[] numberArray = new Number[2];
        numberArray[0] = (Number) 1.0F;
        arg2[0] = numberArray;
        DefaultIntervalCategoryDataset arg0 = new DefaultIntervalCategoryDataset((String[]) null, arg2, arg2);
        MultiplePiePlot arg1 = new MultiplePiePlot(arg0);
        JFreeChart jFreeChart = new JFreeChart("", arg1);
        jFreeChart.createBufferedImage(10, 2548);
        assertEquals(0.0, arg1.getLimit(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testSetAggregatedItemsPaintThrowsIllegalArgumentException() throws Throwable  {
        MultiplePiePlot multiplePiePlot = new MultiplePiePlot();
        // Undeclared exception!
        try { 
          multiplePiePlot.setAggregatedItemsPaint((Paint) null);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // Null 'paint' argument.
           //
           verifyException("org.jfree.chart.plot.MultiplePiePlot", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testSetAggregatedItemsKeyThrowsIllegalArgumentException() throws Throwable  {
        MultiplePiePlot multiplePiePlot = new MultiplePiePlot();
        // Undeclared exception!
        try { 
          multiplePiePlot.setAggregatedItemsKey((Comparable) null);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // Null 'key' argument.
           //
           verifyException("org.jfree.chart.plot.MultiplePiePlot", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testSetDataExtractOrderThrowsIllegalArgumentException() throws Throwable  {
        MultiplePiePlot multiplePiePlot = new MultiplePiePlot();
        // Undeclared exception!
        try { 
          multiplePiePlot.setDataExtractOrder((TableOrder) null);
          fail("Expecting exception: IllegalArgumentException");
        
        } catch(IllegalArgumentException e) {
           //
           // Null 'order' argument
           //
           verifyException("org.jfree.chart.plot.MultiplePiePlot", e);
        }
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testSetDatasetWithNonNull() throws Throwable  {
        DefaultCategoryDataset arg0 = new DefaultCategoryDataset();
        MultiplePiePlot multiplePiePlot = new MultiplePiePlot(arg0);
        multiplePiePlot.setDataset(arg0);
        assertEquals(0.0, multiplePiePlot.getLimit(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testSetDatasetWithNull() throws Throwable  {
        MultiplePiePlot multiplePiePlot = new MultiplePiePlot((CategoryDataset) null);
        multiplePiePlot.setDataset((CategoryDataset) null);
        assertEquals(0.0, multiplePiePlot.getLimit(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testGetLimitReturningZero() throws Throwable  {
        MultiplePiePlot multiplePiePlot = new MultiplePiePlot();
        double limit = multiplePiePlot.getLimit();
        assertEquals(0.0, limit, 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testGetLimitReturningPositive() throws Throwable  {
        MultiplePiePlot multiplePiePlot = new MultiplePiePlot();
        multiplePiePlot.setLimit(3047.485829937);
        double limit = multiplePiePlot.getLimit();
        assertEquals(3047.485829937, limit, 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testGetDataset() throws Throwable  {
        MultiplePiePlot multiplePiePlot = new MultiplePiePlot();
        multiplePiePlot.getDataset();
        assertEquals(0.0, multiplePiePlot.getLimit(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testGetAggregatedItemsKey() throws Throwable  {
        MultiplePiePlot multiplePiePlot = new MultiplePiePlot((CategoryDataset) null);
        Comparable aggregatedItemsKey = multiplePiePlot.getAggregatedItemsKey();
        assertEquals(0.0, multiplePiePlot.getLimit(), 0.01);
        assertEquals("Other", aggregatedItemsKey);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testSetPieChart() throws Throwable  {
        MultiplePiePlot multiplePiePlot = new MultiplePiePlot((CategoryDataset) null);
        multiplePiePlot.setPieChart((JFreeChart) null);
        multiplePiePlot.getPieChart();
        assertEquals(0.0, multiplePiePlot.getLimit(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testGetAggregatedItemsPaint() throws Throwable  {
        MultiplePiePlot multiplePiePlot = new MultiplePiePlot((CategoryDataset) null);
        Color aggregatedItemsPaint = (Color)multiplePiePlot.getAggregatedItemsPaint();
        assertEquals(0.0, multiplePiePlot.getLimit(), 0.01);
        assertEquals(192, aggregatedItemsPaint.getBlue());
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testGetDataExtractOrder() throws Throwable  {
        MultiplePiePlot multiplePiePlot = new MultiplePiePlot((CategoryDataset) null);
        multiplePiePlot.getDataExtractOrder();
        assertEquals(0.0, multiplePiePlot.getLimit(), 0.01);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testGetPlotType() throws Throwable  {
        MultiplePiePlot multiplePiePlot = new MultiplePiePlot();
        String plotType = multiplePiePlot.getPlotType();
        assertEquals(0.0, multiplePiePlot.getLimit(), 0.01);
        assertEquals("Multiple Pie Plot", plotType);
    }
  
    @Test
    @Timeout(value = 4000 , unit = TimeUnit.MILLISECONDS)
    public void testGetPieChartReturningJFreeChartWhereIsNotifyIsTrue() throws Throwable  {
        MultiplePiePlot multiplePiePlot = new MultiplePiePlot((CategoryDataset) null);
        multiplePiePlot.getPieChart();
        assertEquals(0.0, multiplePiePlot.getLimit(), 0.01);
    }
  }
  