public class AreaChartTests extends TestCase { /** A chart. */ private JFreeChart chart; /** * Returns the tests as a test suite. * * @return The test suite. */ public static Test suite() { return new TestSuite(AreaChartTests.class); } /** * Constructs a new set of tests. * * @param name the name of the tests. */ public AreaChartTests(String name) { super(name); } /** * Common test setup. */ protected void setUp() { this.chart = createAreaChart(); } /** * Check that setting a tool tip generator for a series does override the * default generator. */ public void testSetSeriesToolTipGenerator() { CategoryPlot plot = (CategoryPlot) this.chart.getPlot(); CategoryItemRenderer renderer = plot.getRenderer(); StandardCategoryToolTipGenerator tt = new StandardCategoryToolTipGenerator(); renderer.setSeriesToolTipGenerator(0, tt); CategoryToolTipGenerator tt2 = renderer.getToolTipGenerator(0, 0); assertTrue(tt2 == tt); } /** * Check that setting a URL generator for a series does override the * default generator. */ public void testSetSeriesURLGenerator() { CategoryPlot plot = (CategoryPlot) this.chart.getPlot(); CategoryItemRenderer renderer = plot.getRenderer(); StandardCategoryURLGenerator url1 = new StandardCategoryURLGenerator(); renderer.setSeriesItemURLGenerator(0, url1); CategoryURLGenerator url2 = renderer.getItemURLGenerator(0, 0); assertTrue(url2 == url1); } /** * Draws the chart with a null info object to make sure that no exceptions * are thrown (a problem that was occurring at one point). */ public void testDrawWithNullInfo() { boolean success = false; try { BufferedImage image = new BufferedImage(200 , 100, BufferedImage.TYPE_INT_RGB); Graphics2D g2 = image.createGraphics(); this.chart.draw(g2, new Rectangle2D.Double(0, 0, 200, 100), null, null); g2.dispose(); success = true; } catch (Exception e) { success = false; } assertTrue(success); } /** * Replaces the chart's dataset and then checks that the new dataset is OK. */ public void testReplaceDataset() { Number[][] data = new Integer[][] {{new Integer(-30), new Integer(-20)}, {new Integer(-10), new Integer(10)}, {new Integer(20), new Integer(30)}}; CategoryDataset newData = DatasetUtilities.createCategoryDataset( "S", "C", data); LocalListener l = new LocalListener(); this.chart.addChangeListener(l); CategoryPlot plot = (CategoryPlot) this.chart.getPlot(); plot.setDataset(newData); assertEquals(true, l.flag); ValueAxis axis = plot.getRangeAxis(); Range range = axis.getRange(); assertTrue("Expecting the lower bound of the range to be around -30: " + range.getLowerBound(), range.getLowerBound() <= -30); assertTrue("Expecting the upper bound of the range to be around 30: " + range.getUpperBound(), range.getUpperBound() >= 30); } /** * Create an area chart with sample data in the range -3 to +3. * * @return The chart. */ private static JFreeChart createAreaChart() { Number[][] data = new Integer[][] {{new Integer(-3), new Integer(-2)}, {new Integer(-1), new Integer(1)}, {new Integer(2), new Integer(3)}}; CategoryDataset dataset = DatasetUtilities.createCategoryDataset("S", "C", data); return ChartFactory.createAreaChart("Area Chart", "Domain", "Range", dataset, PlotOrientation.HORIZONTAL, true, true, true); } /** * A chart change listener. */ static class LocalListener implements ChartChangeListener { /** A flag. */ private boolean flag = false; /** * Event handler. * * @param event the event. */ public void chartChanged(ChartChangeEvent event) { this.flag = true
public class StackedBarChart3DTests extends TestCase { /** A chart. */ private JFreeChart chart; /** * Returns the tests as a test suite. * * @return The test suite. */ public static Test suite() { return new TestSuite(StackedBarChart3DTests.class); } /** * Constructs a new set of tests. * * @param name the name of the tests. */ public StackedBarChart3DTests(String name) { super(name); } /** * Common test setup. */ protected void setUp() { this.chart = createChart(); } /** * Draws the chart with a null info object to make sure that no exceptions * are thrown (a problem that was occurring at one point). */ public void testDrawWithNullInfo() { boolean success = false; try { BufferedImage image = new BufferedImage(200 , 100, BufferedImage.TYPE_INT_RGB); Graphics2D g2 = image.createGraphics(); this.chart.draw(g2, new Rectangle2D.Double(0, 0, 200, 100), null, null); g2.dispose(); success = true; } catch (Exception e) { success = false; } assertTrue(success); } /** * Replaces the dataset and checks that it has changed as expected. */ public void testReplaceDataset() { // create a dataset... Number[][] data = new Integer[][] {{new Integer(-30), new Integer(-20)}, {new Integer(-10), new Integer(10)}, {new Integer(20), new Integer(30)}}; CategoryDataset newData = DatasetUtilities.createCategoryDataset("S", "C", data); LocalListener l = new LocalListener(); this.chart.addChangeListener(l); CategoryPlot plot = (CategoryPlot) this.chart.getPlot(); plot.setDataset(newData); assertEquals(true, l.flag); ValueAxis axis = plot.getRangeAxis(); Range range = axis.getRange(); assertTrue("Expecting the lower bound of the range to be around -30: " + range.getLowerBound(), range.getLowerBound() <= -30); assertTrue("Expecting the upper bound of the range to be around 30: " + range.getUpperBound(), range.getUpperBound() >= 30); } /** * Check that setting a tool tip generator for a series does override the * default generator. */ public void testSetSeriesToolTipGenerator() { CategoryPlot plot = (CategoryPlot) this.chart.getPlot(); CategoryItemRenderer renderer = plot.getRenderer(); StandardCategoryToolTipGenerator tt = new StandardCategoryToolTipGenerator(); renderer.setSeriesToolTipGenerator(0, tt); CategoryToolTipGenerator tt2 = renderer.getToolTipGenerator(0, 0); assertTrue(tt2 == tt); } /** * Check that setting a URL generator for a series does override the * default generator. */ public void testSetSeriesURLGenerator() { CategoryPlot plot = (CategoryPlot) this.chart.getPlot(); CategoryItemRenderer renderer = plot.getRenderer(); StandardCategoryURLGenerator url1 = new StandardCategoryURLGenerator(); renderer.setSeriesItemURLGenerator(0, url1); CategoryURLGenerator url2 = renderer.getItemURLGenerator(0, 0); assertTrue(url2 == url1); } /** * Create a stacked bar chart with sample data in the range -3 to +3. * * @return The chart. */ private static JFreeChart createChart() { // create a dataset... Number[][] data = new Integer[][] {{new Integer(-3), new Integer(-2)}, {new Integer(-1), new Integer(1)}, {new Integer(2), new Integer(3)}}; CategoryDataset dataset = DatasetUtilities.createCategoryDataset("S", "C", data); // create the chart... return ChartFactory.createStackedBarChart3D( "Stacked Bar Chart 3D", // chart title "Domain", "Range", dataset, // data PlotOrientation.HORIZONTAL, true, // include legend true, true ); } /** * A chart change listener. */ static class LocalListener implements ChartChangeListener { /** A flag. */ private boolean flag = false; /** * Event handler. * * @param event the event. */ public void chartChanged(ChartChangeEvent event) { this.flag = true
Clone fragments detected by clone detection tool
File path: /jfreechart-1.0.10/tests/org/jfree/chart/junit/AreaChartTests.java File path: /jfreechart-1.0.10/tests/org/jfree/chart/junit/StackedBarChart3DTests.java
Method name: Method name:
Number of AST nodes: 0 Number of AST nodes: 0
1
public class AreaChartTests extends TestCase {
1
public class StackedBarChart3DTests extends TestCase {
2
    /** A chart. */
2
    /** A chart. */
3
    private JFreeChart chart;
3
    private JFreeChart chart;
4
    /**
4
    /**
5
     * Returns the tests as a test suite.
5
     * Returns the tests as a test suite.
6
     *
6
     *
7
     * @return The test suite.
7
     * @return The test suite.
8
     */
8
     */
9
    public static Test suite() {
9
    public static Test suite() {
10
        return new TestSuite(AreaChartTests.class);
10
        return new TestSuite(StackedBarChart3DTests.class);
11
    }
11
    }
12
    /**
12
    /**
13
     * Constructs a new set of tests.
13
     * Constructs a new set of tests.
14
     *
14
     *
15
     * @param name  the name of the tests.
15
     * @param name  the name of the tests.
16
     */
16
     */
17
    public AreaChartTests(String name) {
17
    public StackedBarChart3DTests(String name) {
18
        super(name);
18
        super(name);
19
    }
19
    }
20
    /**
20
    /**
21
     * Common test setup.
21
     * Common test setup.
22
     */
22
     */
23
    protected void setUp() {
23
    protected void setUp() {
24
        this.chart = createAreaChart();
24
        this.chart = createChart();
25
    }
25
    }
26
    /**
27
     * Check that setting a tool tip generator for a series does override the
28
     * default generator.
29
     */
30
    public void testSetSeriesToolTipGenerator() {
31
        CategoryPlot plot = (CategoryPlot) this.chart.getPlot();
32
        CategoryItemRenderer renderer = plot.getRenderer();
33
        StandardCategoryToolTipGenerator tt
34
                = new StandardCategoryToolTipGenerator();
35
        renderer.setSeriesToolTipGenerator(0, tt);
36
        CategoryToolTipGenerator tt2 = renderer.getToolTipGenerator(0, 0);
37
        assertTrue(tt2 == tt);
38
    }
39
    
40
    /**
41
     * Check that setting a URL generator for a series does override the
42
     * default generator.
43
     */
44
    public void testSetSeriesURLGenerator() {
45
        CategoryPlot plot = (CategoryPlot) this.chart.getPlot();
46
        CategoryItemRenderer renderer = plot.getRenderer();
47
        StandardCategoryURLGenerator url1
48
                = new StandardCategoryURLGenerator();
49
        renderer.setSeriesItemURLGenerator(0, url1);
50
        CategoryURLGenerator url2 = renderer.getItemURLGenerator(0, 0);
51
        assertTrue(url2 == url1);
52
    }
53
    
54
    /**
26
    /**
55
     * Draws the chart with a null info object to make sure that no exceptions 
27
     * Draws the chart with a null info object to make sure that no exceptions 
56
     * are thrown (a problem that was occurring at one point).
28
     * are thrown (a problem that was occurring at one point).
57
     */
29
     */
58
    public void testDrawWithNullInfo() {
30
    public void testDrawWithNullInfo() {
59
        boolean success = false;
31
        boolean success = false;
60
        try {
32
        try {
61
            BufferedImage image = new BufferedImage(200 , 100, 
33
            BufferedImage image = new BufferedImage(200 , 100, 
62
                    BufferedImage.TYPE_INT_RGB);
34
                    BufferedImage.TYPE_INT_RGB);
63
            Graphics2D g2 = image.createGraphics();
35
            Graphics2D g2 = image.createGraphics();
64
            this.chart.draw(g2, new Rectangle2D.Double(0, 0, 200, 100), null, 
36
            this.chart.draw(g2, new Rectangle2D.Double(0, 0, 200, 100), null,
65
                    null);
37
                    null);
66
            g2.dispose();
38
            g2.dispose();
67
            success = true;
39
            success = true;
68
        }
40
        }
69
        catch (Exception e) {
41
        catch (Exception e) {
70
            success = false;
42
          success = false;
71
        }
43
        }
72
        assertTrue(success);
44
        assertTrue(success);
73
    }
45
    }
74
    /**
46
    /**
75
     * Replaces the chart's dataset and then checks that the new dataset is OK.
47
     * Replaces the dataset and checks that it has changed as expected.
76
     */
48
     */
77
    public void testReplaceDataset() {
49
    public void testReplaceDataset() {
50
        // create a dataset...
78
        Number[][] data = new Integer[][]
51
        Number[][] data = new Integer[][]
79
            {{new Integer(-30), new Integer(-20)},
52
            {{new Integer(-30), new Integer(-20)},
80
             {new Integer(-10), new Integer(10)},
53
             {new Integer(-10), new Integer(10)},
81
             {new Integer(20), new Integer(30)}};
54
             {new Integer(20), new Integer(30)}};
82
        CategoryDataset newData = DatasetUtilities.createCategoryDataset(
55
        CategoryDataset newData = DatasetUtilities.createCategoryDataset("S", 
83
                "S", "C", data);
56
                "C", data);
84
        LocalListener l = new LocalListener();
57
        LocalListener l = new LocalListener();
85
        this.chart.addChangeListener(l);
58
        this.chart.addChangeListener(l);
86
        CategoryPlot plot = (CategoryPlot) this.chart.getPlot();
59
        CategoryPlot plot = (CategoryPlot) this.chart.getPlot();
87
        plot.setDataset(newData);
60
        plot.setDataset(newData);
88
        assertEquals(true, l.flag);
61
        assertEquals(true, l.flag);
89
        ValueAxis axis = plot.getRangeAxis();
62
        ValueAxis axis = plot.getRangeAxis();
90
        Range range = axis.getRange();
63
        Range range = axis.getRange();
91
        assertTrue("Expecting the lower bound of the range to be around -30: "
64
        assertTrue("Expecting the lower bound of the range to be around -30: "
92
                   + range.getLowerBound(), range.getLowerBound() <= -30);
65
                    + range.getLowerBound(), range.getLowerBound() <= -30);
93
        assertTrue("Expecting the upper bound of the range to be around 30: "
66
        assertTrue("Expecting the upper bound of the range to be around 30: "
94
                   + range.getUpperBound(), range.getUpperBound() >= 30);
67
                   + range.getUpperBound(), range.getUpperBound() >= 30);
95
    }
68
    }
96
    /**
69
    /**
97
     * Create an area
70
     * Check that setting a tool tip generator for a series does override the
71
     * default generator.
72
     */
73
    public void testSetSeriesToolTipGenerator() {
74
        CategoryPlot plot = (CategoryPlot) this.chart.getPlot();
75
        CategoryItemRenderer renderer = plot.getRenderer();
76
        StandardCategoryToolTipGenerator tt
77
                = new StandardCategoryToolTipGenerator();
78
        renderer.setSeriesToolTipGenerator(0, tt);
79
        CategoryToolTipGenerator tt2 = renderer.getToolTipGenerator(0, 0);
80
        assertTrue(tt2 == tt);
81
    }
82
    
83
    /**
84
     * Check that setting a URL generator for a series does override the
85
     * default generator.
86
     */
87
    public void testSetSeriesURLGenerator() {
88
        CategoryPlot plot = (CategoryPlot) this.chart.getPlot();
89
        CategoryItemRenderer renderer = plot.getRenderer();
90
        StandardCategoryURLGenerator url1
91
                = new StandardCategoryURLGenerator();
92
        renderer.setSeriesItemURLGenerator(0, url1);
93
        CategoryURLGenerator url2 = renderer.getItemURLGenerator(0, 0);
94
        assertTrue(url2 == url1);
95
    }
96
    
97
    /**
98
 chart with sample data in the range -3 to +3.
98
     * Create a stacked bar chart with sample data in the range -3 to +3.
99
     *
99
     *
100
     * @return The chart.
100
     * @return The chart.
101
     */
101
     */
102
    private static JFreeChart createAreaChart() {
102
    private static JFreeChart createChart() {
103
  
103
        // create a dataset...
104
      Number[][] data = new Integer[][]
104
        Number[][] data = new Integer[][]
105
            {{new Integer(-3), new Integer(-2)},
105
            {{new Integer(-3), new Integer(-2)},
106
             {new Integer(-1), new Integer(1)},
106
             {new Integer(-1), new Integer(1)},
107
             {new Integer(2), new Integer(3)}};
107
             {new Integer(2), new Integer(3)}};
108
        CategoryDataset dataset = DatasetUtilities.createCategoryDataset("S", 
108
        CategoryDataset dataset = DatasetUtilities.createCategoryDataset("S", 
109
                "C", data);
109
                "C", data);
110
        // create the chart...
110
        return ChartFactory.createAreaChart("Area Chart",
111
        return ChartFactory.createStackedBarChart3D(
112
            "Stacked Bar Chart 3D",  // chart title
111
 "Domain", "Range",
113
            "Domain", "Range",
112
                dataset,
114
            dataset,      // data
113
 PlotOrientation.HORIZONTAL, true, true, true
115
            PlotOrientation.HORIZONTAL,
116
            true,         // include legend
117
            true,
118
            true
114
);
119
        );
115
    }
120
    }
116
    /**
121
    /**
117
     * A chart change listener.
122
     * A chart change listener.
118
     */
123
     */
119
    static class LocalListener implements ChartChangeListener {
124
    static class LocalListener implements ChartChangeListener {
120
        /** A flag. */
125
        /** A flag. */
121
        private boolean flag = false;
126
        private boolean flag = false;
122
        /**
127
        /**
123
         * Event handler.
128
         * Event handler.
124
         *
129
         *
125
         * @param event  the event.
130
         * @param event  the event.
126
         */
131
         */
127
        public void chartChanged(ChartChangeEvent event) {
132
        public void chartChanged(ChartChangeEvent event) {
128
            this.flag = true
133
            this.flag = true
Summary
Number of common nesting structure subtrees0
Number of refactorable cases0
Number of non-refactorable cases0
Time elapsed for finding largest common nesting structure subtrees (ms)0.0
Clones location
Number of node comparisons0