123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284 |
- /* ===========================================================
- * JFreeChart : a free chart library for the Java(tm) platform
- * ===========================================================
- *
- * (C) Copyright 2000-2013, by Object Refinery Limited and Contributors.
- *
- * Project Info: http://www.jfree.org/jfreechart/index.html
- *
- * This library is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2.1 of the License, or
- * (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
- * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
- * License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
- * USA.
- *
- * [Oracle and Java are registered trademarks of Oracle and/or its affiliates.
- * Other names may be trademarks of their respective owners.]
- *
- * ---------------------------
- * StandardChartThemeTest.java
- * ---------------------------
- * (C) Copyright 2008-2013, by Object Refinery Limited.
- *
- * Original Author: David Gilbert (for Object Refinery Limited);
- * Contributor(s): -;
- *
- * Changes
- * -------
- * 14-Aug-2008 : Version 1 (DG);
- *
- */
- package org.jfree.chart;
- import static org.junit.Assert.assertTrue;
- import static org.junit.Assert.assertFalse;
- import java.awt.BasicStroke;
- import java.awt.Color;
- import java.awt.Font;
- import java.awt.GradientPaint;
- import java.awt.Paint;
- import java.awt.Shape;
- import java.awt.Stroke;
- import java.awt.geom.Rectangle2D;
- import org.jfree.chart.plot.DefaultDrawingSupplier;
- import org.jfree.chart.plot.PieLabelLinkStyle;
- import org.jfree.chart.renderer.category.StandardBarPainter;
- import org.jfree.chart.renderer.xy.StandardXYBarPainter;
- import org.jfree.ui.RectangleInsets;
- import org.junit.Test;
- /**
- * Tests for the {@link StandardChartTheme} class.
- */
- public class StandardChartThemeTest {
- /**
- * Confirm that the equals method can distinguish all the required fields.
- */
- @Test
- public void testEquals() {
- StandardChartTheme t1 = new StandardChartTheme("Name");
- StandardChartTheme t2 = new StandardChartTheme("Name");
- assertTrue(t1.equals(t2));
- // name
- t1 = new StandardChartTheme("t1");
- assertFalse(t1.equals(t2));
- t2 = new StandardChartTheme("t1");
- assertTrue(t1.equals(t2));
- //extraLargeFont
- t1.setExtraLargeFont(new Font("Dialog", Font.PLAIN, 21));
- assertFalse(t1.equals(t2));
- t2.setExtraLargeFont(new Font("Dialog", Font.PLAIN, 21));
- assertTrue(t1.equals(t2));
- //largeFont
- t1.setLargeFont(new Font("Dialog", Font.PLAIN, 19));
- assertFalse(t1.equals(t2));
- t2.setLargeFont(new Font("Dialog", Font.PLAIN, 19));
- assertTrue(t1.equals(t2));
- //regularFont;
- t1.setRegularFont(new Font("Dialog", Font.PLAIN, 17));
- assertFalse(t1.equals(t2));
- t2.setRegularFont(new Font("Dialog", Font.PLAIN, 17));
- assertTrue(t1.equals(t2));
- //titlePaint;
- t1.setTitlePaint(new GradientPaint(0f, 1f, Color.red, 2f, 3f, Color.blue));
- assertFalse(t1.equals(t2));
- t2.setTitlePaint(new GradientPaint(0f, 1f, Color.red, 2f, 3f, Color.blue));
- assertTrue(t1.equals(t2));
- //subtitlePaint;
- t1.setSubtitlePaint(new GradientPaint(1f, 2f, Color.red, 3f, 4f, Color.blue));
- assertFalse(t1.equals(t2));
- t2.setSubtitlePaint(new GradientPaint(1f, 2f, Color.red, 3f, 4f, Color.blue));
- assertTrue(t1.equals(t2));
- //chartBackgroundPaint;
- t1.setChartBackgroundPaint(new GradientPaint(2f, 3f, Color.blue, 4f, 5f, Color.red));
- assertFalse(t1.equals(t2));
- t2.setChartBackgroundPaint(new GradientPaint(2f, 3f, Color.blue, 4f, 5f, Color.red));
- assertTrue(t1.equals(t2));
- //legendBackgroundPaint;
- t1.setLegendBackgroundPaint(new GradientPaint(3f, 4f, Color.gray, 1f, 2f, Color.red));
- assertFalse(t1.equals(t2));
- t2.setLegendBackgroundPaint(new GradientPaint(3f, 4f, Color.gray, 1f, 2f, Color.red));
- assertTrue(t1.equals(t2));
- //legendItemPaint;
- t1.setLegendItemPaint(new GradientPaint(9f, 8f, Color.red, 7f, 6f, Color.blue));
- assertFalse(t1.equals(t2));
- t2.setLegendItemPaint(new GradientPaint(9f, 8f, Color.red, 7f, 6f, Color.blue));
- assertTrue(t1.equals(t2));
- //drawingSupplier;
- t1.setDrawingSupplier(new DefaultDrawingSupplier(
- new Paint[] {Color.red},
- new Paint[] {Color.blue},
- new Stroke[] {new BasicStroke(1.0f)},
- new Stroke[] {new BasicStroke(1.0f)},
- new Shape[] {new Rectangle2D.Double(1.0, 2.0, 3.0, 4.0)}));
- assertFalse(t1.equals(t2));
- t2.setDrawingSupplier(new DefaultDrawingSupplier(
- new Paint[] {Color.red},
- new Paint[] {Color.blue},
- new Stroke[] {new BasicStroke(1.0f)},
- new Stroke[] {new BasicStroke(1.0f)},
- new Shape[] {new Rectangle2D.Double(1.0, 2.0, 3.0, 4.0)}));
- assertTrue(t1.equals(t2));
- //plotBackgroundPaint;
- t1.setPlotBackgroundPaint(new GradientPaint(4f, 3f, Color.red, 6f, 7f, Color.blue));
- assertFalse(t1.equals(t2));
- t2.setPlotBackgroundPaint(new GradientPaint(4f, 3f, Color.red, 6f, 7f, Color.blue));
- assertTrue(t1.equals(t2));
- //plotOutlinePaint;
- t1.setPlotOutlinePaint(new GradientPaint(5f, 2f, Color.blue, 6f, 7f, Color.red));
- assertFalse(t1.equals(t2));
- t2.setPlotOutlinePaint(new GradientPaint(5f, 2f, Color.blue, 6f, 7f, Color.red));
- assertTrue(t1.equals(t2));
- //labelLinkStyle;
- t1.setLabelLinkStyle(PieLabelLinkStyle.STANDARD);
- assertFalse(t1.equals(t2));
- t2.setLabelLinkStyle(PieLabelLinkStyle.STANDARD);
- assertTrue(t1.equals(t2));
- //labelLinkPaint;
- t1.setLabelLinkPaint(new GradientPaint(4f, 3f, Color.red, 2f, 9f, Color.blue));
- assertFalse(t1.equals(t2));
- t2.setLabelLinkPaint(new GradientPaint(4f, 3f, Color.red, 2f, 9f, Color.blue));
- assertTrue(t1.equals(t2));
- //domainGridlinePaint;
- t1.setDomainGridlinePaint(Color.blue);
- assertFalse(t1.equals(t2));
- t2.setDomainGridlinePaint(Color.blue);
- assertTrue(t1.equals(t2));
- //rangeGridlinePaint;
- t1.setRangeGridlinePaint(Color.red);
- assertFalse(t1.equals(t2));
- t2.setRangeGridlinePaint(Color.red);
- assertTrue(t1.equals(t2));
- //axisOffset;
- t1.setAxisOffset(new RectangleInsets(1, 2, 3, 4));
- assertFalse(t1.equals(t2));
- t2.setAxisOffset(new RectangleInsets(1, 2, 3, 4));
- assertTrue(t1.equals(t2));
- //axisLabelPaint;
- t1.setAxisLabelPaint(new GradientPaint(8f, 4f, Color.gray, 2f, 9f, Color.blue));
- assertFalse(t1.equals(t2));
- t2.setAxisLabelPaint(new GradientPaint(8f, 4f, Color.gray, 2f, 9f, Color.blue));
- assertTrue(t1.equals(t2));
- //tickLabelPaint;
- t1.setTickLabelPaint(new GradientPaint(3f, 4f, Color.red, 5f, 6f, Color.yellow));
- assertFalse(t1.equals(t2));
- t2.setTickLabelPaint(new GradientPaint(3f, 4f, Color.red, 5f, 6f, Color.yellow));
- assertTrue(t1.equals(t2));
- //itemLabelPaint;
- t1.setItemLabelPaint(new GradientPaint(2f, 5f, Color.gray, 1f, 2f, Color.blue));
- assertFalse(t1.equals(t2));
- t2.setItemLabelPaint(new GradientPaint(2f, 5f, Color.gray, 1f, 2f, Color.blue));
- assertTrue(t1.equals(t2));
- //shadowVisible;
- t1.setShadowVisible(!t1.isShadowVisible());
- assertFalse(t1.equals(t2));
- t2.setShadowVisible(t1.isShadowVisible());
- assertTrue(t1.equals(t2));
- //shadowPaint;
- t1.setShadowPaint(new GradientPaint(7f, 1f, Color.blue, 4f, 6f, Color.red));
- assertFalse(t1.equals(t2));
- t2.setShadowPaint(new GradientPaint(7f, 1f, Color.blue, 4f, 6f, Color.red));
- assertTrue(t1.equals(t2));
- //barPainter;
- t1.setBarPainter(new StandardBarPainter());
- assertFalse(t1.equals(t2));
- t2.setBarPainter(new StandardBarPainter());
- assertTrue(t1.equals(t2));
- //xyBarPainter;
- t1.setXYBarPainter(new StandardXYBarPainter());
- assertFalse(t1.equals(t2));
- t2.setXYBarPainter(new StandardXYBarPainter());
- assertTrue(t1.equals(t2));
- //thermometerPaint;
- t1.setThermometerPaint(new GradientPaint(9f, 7f, Color.red, 5f, 1f, Color.blue));
- assertFalse(t1.equals(t2));
- t2.setThermometerPaint(new GradientPaint(9f, 7f, Color.red, 5f, 1f, Color.blue));
- assertTrue(t1.equals(t2));
- //wallPaint;
- t1.setWallPaint(new GradientPaint(4f, 5f, Color.red, 1f, 0f, Color.gray));
- assertFalse(t1.equals(t2));
- t2.setWallPaint(new GradientPaint(4f, 5f, Color.red, 1f, 0f, Color.gray));
- assertTrue(t1.equals(t2));
- //errorIndicatorPaint;
- t1.setErrorIndicatorPaint(new GradientPaint(0f, 1f, Color.white, 2f, 3f, Color.blue));
- assertFalse(t1.equals(t2));
- t2.setErrorIndicatorPaint(new GradientPaint(0f, 1f, Color.white, 2f, 3f, Color.blue));
- assertTrue(t1.equals(t2));
- //gridBandPaint
- t1.setGridBandPaint(new GradientPaint(1f, 2f, Color.white, 4f, 8f, Color.red));
- assertFalse(t1.equals(t2));
- t2.setGridBandPaint(new GradientPaint(1f, 2f, Color.white, 4f, 8f, Color.red));
- assertTrue(t1.equals(t2));
- //gridBandAlternatePaint
- t1.setGridBandAlternatePaint(new GradientPaint(1f, 4f, Color.green, 1f, 2f, Color.red));
- assertFalse(t1.equals(t2));
- t2.setGridBandAlternatePaint(new GradientPaint(1f, 4f, Color.green, 1f, 2f, Color.red));
- assertTrue(t1.equals(t2));
- }
- /**
- * Serialize an instance, restore it, and check for equality.
- */
- @Test
- public void testSerialization() {
- StandardChartTheme t1 = new StandardChartTheme("Name");
- StandardChartTheme t2 = (StandardChartTheme) TestUtilities.serialised(t1);
- assertTrue(t1.equals(t2));
- }
- /**
- * Basic checks for cloning.
- */
- @Test
- public void testCloning() throws CloneNotSupportedException {
- StandardChartTheme t1 = new StandardChartTheme("Name");
- StandardChartTheme t2 = (StandardChartTheme) t1.clone();
- assertTrue(t1 != t2);
- assertTrue(t1.getClass() == t2.getClass());
- assertTrue(t1.equals(t2));
- }
- }
|