/** Two objects that are equal are required to return the same hashCode. */ public void testHashCode() { DialBackground b1 = new DialBackground(Color.red); DialBackground b2 = new DialBackground(Color.red); assertTrue(b1.equals(b2)); int h1 = b1.hashCode(); int h2 = b2.hashCode(); assertEquals(h1, h2); }
protected void setDialBackground(ChartDocument chartDocument, DialPlot dialPlot) { ChartElement plotElement = getUniqueElement(chartDocument, ChartElement.TAG_NAME_PLOT); CSSValuePair cssValue = (CSSValuePair) plotElement.getLayoutStyle().getValue(ChartStyleKeys.GRADIENT_COLOR); Color beginColor = JFreeChartUtils.getColorFromCSSValue(cssValue.getFirstValue()); Color endColor = JFreeChartUtils.getColorFromCSSValue(cssValue.getSecondValue()); GradientPaint gradientpaint = new GradientPaint(new Point(), beginColor, new Point(), endColor); DialBackground dialbackground = new DialBackground(gradientpaint); // specify Color here for no gradient dialbackground.setGradientPaintTransformer( new StandardGradientPaintTransformer(GradientPaintTransformType.VERTICAL)); dialPlot.setBackground(dialbackground); }
/** Serialize an instance, restore it, and check for equality. */ public void testSerialization() { // test a default instance DialBackground b1 = new DialBackground(); DialBackground b2 = null; try { ByteArrayOutputStream buffer = new ByteArrayOutputStream(); ObjectOutput out = new ObjectOutputStream(buffer); out.writeObject(b1); out.close(); ObjectInput in = new ObjectInputStream(new ByteArrayInputStream(buffer.toByteArray())); b2 = (DialBackground) in.readObject(); in.close(); } catch (Exception e) { e.printStackTrace(); } assertEquals(b1, b2); // test a customised instance b1 = new DialBackground(); b1.setPaint(new GradientPaint(1.0f, 2.0f, Color.red, 3.0f, 4.0f, Color.green)); b1.setGradientPaintTransformer( new StandardGradientPaintTransformer(GradientPaintTransformType.CENTER_VERTICAL)); b2 = null; try { ByteArrayOutputStream buffer = new ByteArrayOutputStream(); ObjectOutput out = new ObjectOutputStream(buffer); out.writeObject(b1); out.close(); ObjectInput in = new ObjectInputStream(new ByteArrayInputStream(buffer.toByteArray())); b2 = (DialBackground) in.readObject(); in.close(); } catch (Exception e) { e.printStackTrace(); } assertEquals(b1, b2); }
/** Confirm that the equals method can distinguish all the required fields. */ public void testEquals() { DialBackground b1 = new DialBackground(); DialBackground b2 = new DialBackground(); assertTrue(b1.equals(b2)); // paint b1.setPaint(new GradientPaint(1.0f, 2.0f, Color.red, 3.0f, 4.0f, Color.yellow)); assertFalse(b1.equals(b2)); b2.setPaint(new GradientPaint(1.0f, 2.0f, Color.red, 3.0f, 4.0f, Color.yellow)); assertTrue(b1.equals(b2)); // gradient paint transformer b1.setGradientPaintTransformer( new StandardGradientPaintTransformer(GradientPaintTransformType.CENTER_VERTICAL)); assertFalse(b1.equals(b2)); b2.setGradientPaintTransformer( new StandardGradientPaintTransformer(GradientPaintTransformType.CENTER_VERTICAL)); assertTrue(b1.equals(b2)); // check an inherited attribute b1.setVisible(false); assertFalse(b1.equals(b2)); b2.setVisible(false); assertTrue(b1.equals(b2)); }
/** Confirm that cloning works. */ public void testCloning() { // test default instance DialBackground b1 = new DialBackground(); DialBackground b2 = null; try { b2 = (DialBackground) b1.clone(); } catch (CloneNotSupportedException e) { e.printStackTrace(); } assertTrue(b1 != b2); assertTrue(b1.getClass() == b2.getClass()); assertTrue(b1.equals(b2)); // test a customised instance b1 = new DialBackground(); b1.setPaint(new GradientPaint(1.0f, 2.0f, Color.red, 3.0f, 4.0f, Color.green)); b1.setGradientPaintTransformer( new StandardGradientPaintTransformer(GradientPaintTransformType.CENTER_VERTICAL)); b2 = null; try { b2 = (DialBackground) b1.clone(); } catch (CloneNotSupportedException e) { e.printStackTrace(); } assertTrue(b1 != b2); assertTrue(b1.getClass() == b2.getClass()); assertTrue(b1.equals(b2)); // check that the listener lists are independent MyDialLayerChangeListener l1 = new MyDialLayerChangeListener(); b1.addChangeListener(l1); assertTrue(b1.hasListener(l1)); assertFalse(b2.hasListener(l1)); }