StandardDialRange r1 = new StandardDialRange(); StandardDialRange r2 = new StandardDialRange(); assertTrue(r1.equals(r2)); // lowerBound r1.setLowerBound(1.1); assertFalse(r1.equals(r2)); r2.setLowerBound(1.1); assertTrue(r1.equals(r2)); // upperBound r1.setUpperBound(11.1); assertFalse(r1.equals(r2)); r2.setUpperBound(11.1); assertTrue(r1.equals(r2)); // paint r1.setPaint(new GradientPaint(1.0f, 2.0f, Color.red, 3.0f, 4.0f, Color.blue)); assertFalse(r1.equals(r2)); r2.setPaint(new GradientPaint(1.0f, 2.0f, Color.red, 3.0f, 4.0f, Color.blue)); assertTrue(r1.equals(r2)); // check an inherited attribute r1.setVisible(false); assertFalse(r1.equals(r2)); r2.setVisible(false); assertTrue(r1.equals(r2));
XYErrorRenderer r1 = new XYErrorRenderer(); XYErrorRenderer r2 = new XYErrorRenderer(); assertEquals(r1, r2); // drawXError r1.setDrawXError(false); assertFalse(r1.equals(r2)); r2.setDrawXError(false); assertTrue(r1.equals(r2)); // drawYError r1.setDrawYError(false); assertFalse(r1.equals(r2)); r2.setDrawYError(false); assertTrue(r1.equals(r2)); // capLength r1.setCapLength(9.0); assertFalse(r1.equals(r2)); r2.setCapLength(9.0); assertTrue(r1.equals(r2)); // errorPaint r1.setErrorPaint(new GradientPaint(1.0f, 2.0f, Color.red, 3.0f, 4.0f, Color.green)); assertFalse(r1.equals(r2)); r2.setErrorPaint(new GradientPaint(1.0f, 2.0f, Color.red, 3.0f, 4.0f, Color.green)); assertTrue(r1.equals(r2));
Clone fragments detected by clone detection tool
File path: /jfreechart-1.0.10/tests/org/jfree/chart/plot/dial/junit/StandardDialRangeTests.java File path: /jfreechart-1.0.10/tests/org/jfree/chart/renderer/xy/junit/XYErrorRendererTests.java
Method name: void testEquals() Method name: void testEquals()
Number of AST nodes: 19 Number of AST nodes: 19
1
StandardDialRange r1 = new StandardDialRange();
2
        StandardDialRange r2 = new StandardDialRange(
1
XYErrorRenderer r1 = new XYErrorRenderer();
2
        XYErrorRenderer r2 = new XYErrorRenderer();
3
        assertEquals(r1, r2);
4
        // drawXError
3
);
5
        r1.setDrawXError(false);
4
        assertTrue(r1.equals(r2));
6
        assertFalse(r1.equals(r2));
5
        
7
        r2.setDrawXError(false);
8
        assertTrue(r1.equals(r2));
6
        // lowerBound
9
        // drawYError
7
        r1.setLowerBound(1.1);
10
        r1.setDrawYError(false);
8
        assertFalse(r1.equals(r2));
11
        assertFalse(r1.equals(r2));
9
        r2.setLowerBound(1.1);
12
        r2.setDrawYError(false);
10
        assertTrue(r1.equals(r2));
13
        assertTrue(r1.equals(r2));
11
        
12
        // upperBound
14
        // capLength
13
        r1.setUpperBound(11.1);
15
        r1.setCapLength(9.0);
14
        assertFalse(r1.equals(r2));
16
        assertFalse(r1.equals(r2));
15
        r2.setUpperBound(11.1);
17
        r2.setCapLength(9.0);
16
        assertTrue(r1.equals(r2));
18
        assertTrue(r1.equals(r2));
17
        
18
        // paint
19
        // errorPaint
19
        r1.setPaint(new GradientPaint(1.0f, 2.0f, Color.red, 3.0f, 4.0f, 
20
        r1.setErrorPaint(new GradientPaint(1.0f, 2.0f, Color.red, 3.0f, 4.0f,
20
                Color.blue));
21
                Color.green));
21
        assertFalse(r1.equals(r2));
22
        assertFalse(r1.equals(r2));
22
        r2.setPaint(new GradientPaint(1.0f, 2.0f, Color.red, 3.0f, 4.0f, 
23
        r2.setErrorPaint(new GradientPaint(1.0f, 2.0f, Color.red, 3.0f, 4.0f,
23
                Color.blue));
24
                Color.
24
        assertTrue(r1.equals(r2));
25
        
26
        // check an inherited attribute
27
        r1.setVisible(false);
28
        assertFalse(r1.equals(r2));
29
        r2.setVisible(false);
25
green));
30
        assertTrue(r1.equals(r2));
26
        assertTrue(r1.equals(r2));
Summary
Number of common nesting structure subtrees1
Number of refactorable cases0
Number of non-refactorable cases1
Time elapsed for finding largest common nesting structure subtrees (ms)0.0
Clones locationClones are in different classes having the same super class
Number of node comparisons117
  1. {Non-refactorable}
    Mapping Summary
    Number of mapped statements17
    Number of unmapped statements in the first code fragment2
    Number of unmapped statements in the second code fragment2
    Time elapsed for statement mapping (ms)0.0
    Clone typeType 2
    Mapped Statements
    ID Statement ID Statement
    1
    StandardDialRange r1 = new StandardDialRange();
    1
    StandardDialRange r1 = new StandardDialRange();
    1
    XYErrorRenderer r1 = new XYErrorRenderer();
    Differences
    Expression1Expression2Difference
    org.jfree.chart.plot.dial.StandardDialRangeorg.jfree.chart.renderer.xy.XYErrorRendererSUBCLASS_TYPE_MISMATCH
    org.jfree.chart.plot.dial.StandardDialRangeorg.jfree.chart.renderer.xy.XYErrorRendererSUBCLASS_TYPE_MISMATCH
    org.jfree.chart.plot.dial.StandardDialRangeorg.jfree.chart.renderer.xy.XYErrorRendererSUBCLASS_TYPE_MISMATCH
    Preondition Violations
    Expression new StandardDialRange() cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression new XYErrorRenderer() cannot be parameterized, because it has dependencies to/from statements that will be extracted
    1
    XYErrorRenderer r1 = new XYErrorRenderer();
    2
    StandardDialRange r2 = new StandardDialRange();
    2
    StandardDialRange r2 = new StandardDialRange();
    2
    XYErrorRenderer r2 = new XYErrorRenderer();
    Differences
    Expression1Expression2Difference
    org.jfree.chart.plot.dial.StandardDialRangeorg.jfree.chart.renderer.xy.XYErrorRendererSUBCLASS_TYPE_MISMATCH
    org.jfree.chart.plot.dial.StandardDialRangeorg.jfree.chart.renderer.xy.XYErrorRendererSUBCLASS_TYPE_MISMATCH
    org.jfree.chart.plot.dial.StandardDialRangeorg.jfree.chart.renderer.xy.XYErrorRendererSUBCLASS_TYPE_MISMATCH
    Preondition Violations
    Expression new StandardDialRange() cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression new XYErrorRenderer() cannot be parameterized, because it has dependencies to/from statements that will be extracted
    2
    XYErrorRenderer r2 = new XYErrorRenderer();
    3
    assertTrue(r1.equals(r2));
    3
    assertTrue(r1.equals(r2));
    3
    assertEquals(r1, r2);
    Differences
    Expression1Expression2Difference
    assertTrueassertEqualsMETHOD_INVOCATION_NAME_MISMATCH
    assertTrue(r1.equals(r2))assertEquals(r1,r2)ARGUMENT_NUMBER_MISMATCH
    Preondition Violations
    Expression assertTrue(r1.equals(r2)) cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression assertEquals(r1,r2) cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression assertTrue(r1.equals(r2)) is a void method call, and thus it cannot be parameterized
    Expression assertEquals(r1,r2) is a void method call, and thus it cannot be parameterized
    Expression assertTrue(r1.equals(r2)) cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression assertEquals(r1,r2) cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression assertTrue(r1.equals(r2)) is a void method call, and thus it cannot be parameterized
    Expression assertEquals(r1,r2) is a void method call, and thus it cannot be parameterized
    3
    assertEquals(r1, r2);
    4
    r1.setLowerBound(1.1);
    4
    r1.setLowerBound(1.1);
    Preondition Violations
    Unmatched statement r1.setLowerBound(1.1); cannot be moved before or after the extracted code, because it has dependencies to/from statements that will be extracted
                                                      
    5
    assertFalse(r1.equals(r2));
    5
    assertFalse(r1.equals(r2));
    5
    assertFalse(r1.equals(r2));
    Differences
    Expression1Expression2Difference
    org.jfree.chart.plot.dial.StandardDialRangeorg.jfree.chart.renderer.xy.XYErrorRendererSUBCLASS_TYPE_MISMATCH
    org.jfree.chart.plot.dial.StandardDialRangeorg.jfree.chart.renderer.xy.XYErrorRendererSUBCLASS_TYPE_MISMATCH
    Preondition Violations
    Expression r2 cannot be unified with expression r2 , because common superclass type org.jfree.util.PublicCloneable cannot be passed as an argument to public boolean equals(java.lang.Object)
    Expression r2 cannot be unified with expression r2 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public boolean equals(java.lang.Object)
    Expression r1 cannot be unified with expression r1 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public boolean equals(java.lang.Object)
    5
    assertFalse(r1.equals(r2));
    6
    r2.setLowerBound(1.1);
    6
    r2.setLowerBound(1.1);
    Preondition Violations
    Unmatched statement r2.setLowerBound(1.1); cannot be moved before or after the extracted code, because it has dependencies to/from statements that will be extracted
                                                      
    7
    assertTrue(r1.equals(r2));
    7
    assertTrue(r1.equals(r2));
    7
    assertTrue(r1.equals(r2));
    Differences
    Expression1Expression2Difference
    org.jfree.chart.plot.dial.StandardDialRangeorg.jfree.chart.renderer.xy.XYErrorRendererSUBCLASS_TYPE_MISMATCH
    org.jfree.chart.plot.dial.StandardDialRangeorg.jfree.chart.renderer.xy.XYErrorRendererSUBCLASS_TYPE_MISMATCH
    Preondition Violations
    Expression r2 cannot be unified with expression r2 , because common superclass type org.jfree.util.PublicCloneable cannot be passed as an argument to public boolean equals(java.lang.Object)
    Expression r2 cannot be unified with expression r2 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public boolean equals(java.lang.Object)
    Expression r1 cannot be unified with expression r1 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public boolean equals(java.lang.Object)
    7
    assertTrue(r1.equals(r2));
                                                          
    8
    r1.setDrawYError(false);
    Preondition Violations
    Unmatched statement r1.setDrawYError(false); cannot be moved before or after the extracted code, because it has dependencies to/from statements that will be extracted
    8
    r1.setDrawYError(false);
                                                            
    10
    r2.setDrawYError(false);
    Preondition Violations
    Unmatched statement r2.setDrawYError(false); cannot be moved before or after the extracted code, because it has dependencies to/from statements that will be extracted
    10
    r2.setDrawYError(false);
    8
    r1.setUpperBound(11.1);
    8
    r1.setUpperBound(11.1);
    12
    r1.setCapLength(9.0);
    Differences
    Expression1Expression2Difference
    11.19.0LITERAL_VALUE_MISMATCH
    setUpperBoundsetCapLengthMETHOD_INVOCATION_NAME_MISMATCH
    org.jfree.chart.plot.dial.StandardDialRangeorg.jfree.chart.renderer.xy.XYErrorRendererSUBCLASS_TYPE_MISMATCH
    Preondition Violations
    Expression r1.setUpperBound(11.1) cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression r1.setCapLength(9.0) cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression r1.setUpperBound(11.1) is a void method call, and thus it cannot be parameterized
    Expression r1.setCapLength(9.0) is a void method call, and thus it cannot be parameterized
    Expression r1 cannot be unified with expression r1 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public void setUpperBound(double) , public void setCapLength(double)
    12
    r1.setCapLength(9.0);
    9
    assertFalse(r1.equals(r2));
    9
    assertFalse(r1.equals(r2));
    9
    assertFalse(r1.equals(r2));
    Differences
    Expression1Expression2Difference
    org.jfree.chart.plot.dial.StandardDialRangeorg.jfree.chart.renderer.xy.XYErrorRendererSUBCLASS_TYPE_MISMATCH
    org.jfree.chart.plot.dial.StandardDialRangeorg.jfree.chart.renderer.xy.XYErrorRendererSUBCLASS_TYPE_MISMATCH
    Preondition Violations
    Expression r2 cannot be unified with expression r2 , because common superclass type org.jfree.util.PublicCloneable cannot be passed as an argument to public boolean equals(java.lang.Object)
    Expression r2 cannot be unified with expression r2 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public boolean equals(java.lang.Object)
    Expression r1 cannot be unified with expression r1 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public boolean equals(java.lang.Object)
    9
    assertFalse(r1.equals(r2));
    10
    r2.setUpperBound(11.1);
    10
    r2.setUpperBound(11.1);
    14
    r2.setCapLength(9.0);
    Differences
    Expression1Expression2Difference
    11.19.0LITERAL_VALUE_MISMATCH
    setUpperBoundsetCapLengthMETHOD_INVOCATION_NAME_MISMATCH
    org.jfree.chart.plot.dial.StandardDialRangeorg.jfree.chart.renderer.xy.XYErrorRendererSUBCLASS_TYPE_MISMATCH
    Preondition Violations
    Expression r2.setUpperBound(11.1) cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression r2.setCapLength(9.0) cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression r2.setUpperBound(11.1) is a void method call, and thus it cannot be parameterized
    Expression r2.setCapLength(9.0) is a void method call, and thus it cannot be parameterized
    Expression r2 cannot be unified with expression r2 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public void setUpperBound(double) , public void setCapLength(double)
    14
    r2.setCapLength(9.0);
    11
    assertTrue(r1.equals(r2));
    11
    assertTrue(r1.equals(r2));
    11
    assertTrue(r1.equals(r2));
    Differences
    Expression1Expression2Difference
    org.jfree.chart.plot.dial.StandardDialRangeorg.jfree.chart.renderer.xy.XYErrorRendererSUBCLASS_TYPE_MISMATCH
    org.jfree.chart.plot.dial.StandardDialRangeorg.jfree.chart.renderer.xy.XYErrorRendererSUBCLASS_TYPE_MISMATCH
    Preondition Violations
    Expression r2 cannot be unified with expression r2 , because common superclass type org.jfree.util.PublicCloneable cannot be passed as an argument to public boolean equals(java.lang.Object)
    Expression r2 cannot be unified with expression r2 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public boolean equals(java.lang.Object)
    Expression r1 cannot be unified with expression r1 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public boolean equals(java.lang.Object)
    11
    assertTrue(r1.equals(r2));
    12
    r1.setPaint(new GradientPaint(1.0f, 2.0f, Color.red, 3.0f, 4.0f, Color.blue));
    12
    r1.setPaint(new GradientPaint(1.0f, 2.0f, Color.red, 3.0f, 4.0f, Color.blue));
    16
    r1.setErrorPaint(new GradientPaint(1.0f, 2.0f, Color.red, 3.0f, 4.0f, Color.green));
    Differences
    Expression1Expression2Difference
    bluegreenVARIABLE_NAME_MISMATCH
    setPaintsetErrorPaintMETHOD_INVOCATION_NAME_MISMATCH
    org.jfree.chart.plot.dial.StandardDialRangeorg.jfree.chart.renderer.xy.XYErrorRendererSUBCLASS_TYPE_MISMATCH
    Preondition Violations
    Expression r1.setPaint(new GradientPaint(1.0f,2.0f,Color.red,3.0f,4.0f,Color.blue)) cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression r1.setErrorPaint(new GradientPaint(1.0f,2.0f,Color.red,3.0f,4.0f,Color.green)) cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression r1.setPaint(new GradientPaint(1.0f,2.0f,Color.red,3.0f,4.0f,Color.blue)) is a void method call, and thus it cannot be parameterized
    Expression r1.setErrorPaint(new GradientPaint(1.0f,2.0f,Color.red,3.0f,4.0f,Color.green)) is a void method call, and thus it cannot be parameterized
    Expression r1 cannot be unified with expression r1 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public void setPaint(java.awt.Paint) , public void setErrorPaint(java.awt.Paint)
    16
    r1.setErrorPaint(new GradientPaint(1.0f, 2.0f, Color.red, 3.0f, 4.0f, Color.green));
    13
    assertFalse(r1.equals(r2));
    13
    assertFalse(r1.equals(r2));
    13
    assertFalse(r1.equals(r2));
    Differences
    Expression1Expression2Difference
    org.jfree.chart.plot.dial.StandardDialRangeorg.jfree.chart.renderer.xy.XYErrorRendererSUBCLASS_TYPE_MISMATCH
    org.jfree.chart.plot.dial.StandardDialRangeorg.jfree.chart.renderer.xy.XYErrorRendererSUBCLASS_TYPE_MISMATCH
    Preondition Violations
    Expression r2 cannot be unified with expression r2 , because common superclass type org.jfree.util.PublicCloneable cannot be passed as an argument to public boolean equals(java.lang.Object)
    Expression r2 cannot be unified with expression r2 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public boolean equals(java.lang.Object)
    Expression r1 cannot be unified with expression r1 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public boolean equals(java.lang.Object)
    13
    assertFalse(r1.equals(r2));
    14
    r2.setPaint(new GradientPaint(1.0f, 2.0f, Color.red, 3.0f, 4.0f, Color.blue));
    14
    r2.setPaint(new GradientPaint(1.0f, 2.0f, Color.red, 3.0f, 4.0f, Color.blue));
    18
    r2.setErrorPaint(new GradientPaint(1.0f, 2.0f, Color.red, 3.0f, 4.0f, Color.green));
    Differences
    Expression1Expression2Difference
    bluegreenVARIABLE_NAME_MISMATCH
    setPaintsetErrorPaintMETHOD_INVOCATION_NAME_MISMATCH
    org.jfree.chart.plot.dial.StandardDialRangeorg.jfree.chart.renderer.xy.XYErrorRendererSUBCLASS_TYPE_MISMATCH
    Preondition Violations
    Expression r2.setPaint(new GradientPaint(1.0f,2.0f,Color.red,3.0f,4.0f,Color.blue)) cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression r2.setErrorPaint(new GradientPaint(1.0f,2.0f,Color.red,3.0f,4.0f,Color.green)) cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression r2.setPaint(new GradientPaint(1.0f,2.0f,Color.red,3.0f,4.0f,Color.blue)) is a void method call, and thus it cannot be parameterized
    Expression r2.setErrorPaint(new GradientPaint(1.0f,2.0f,Color.red,3.0f,4.0f,Color.green)) is a void method call, and thus it cannot be parameterized
    Expression r2 cannot be unified with expression r2 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public void setPaint(java.awt.Paint) , public void setErrorPaint(java.awt.Paint)
    18
    r2.setErrorPaint(new GradientPaint(1.0f, 2.0f, Color.red, 3.0f, 4.0f, Color.green));
    15
    assertTrue(r1.equals(r2));
    15
    assertTrue(r1.equals(r2));
    15
    assertTrue(r1.equals(r2));
    Differences
    Expression1Expression2Difference
    org.jfree.chart.plot.dial.StandardDialRangeorg.jfree.chart.renderer.xy.XYErrorRendererSUBCLASS_TYPE_MISMATCH
    org.jfree.chart.plot.dial.StandardDialRangeorg.jfree.chart.renderer.xy.XYErrorRendererSUBCLASS_TYPE_MISMATCH
    Preondition Violations
    Expression r2 cannot be unified with expression r2 , because common superclass type org.jfree.util.PublicCloneable cannot be passed as an argument to public boolean equals(java.lang.Object)
    Expression r2 cannot be unified with expression r2 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public boolean equals(java.lang.Object)
    Expression r1 cannot be unified with expression r1 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public boolean equals(java.lang.Object)
    15
    assertTrue(r1.equals(r2));
    16
    r1.setVisible(false);
    16
    r1.setVisible(false);
    4
    r1.setDrawXError(false);
    Differences
    Expression1Expression2Difference
    setVisiblesetDrawXErrorMETHOD_INVOCATION_NAME_MISMATCH
    org.jfree.chart.plot.dial.StandardDialRangeorg.jfree.chart.renderer.xy.XYErrorRendererSUBCLASS_TYPE_MISMATCH
    Preondition Violations
    Expression r1.setVisible(false) cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression r1.setDrawXError(false) cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression r1.setVisible(false) is a void method call, and thus it cannot be parameterized
    Expression r1.setDrawXError(false) is a void method call, and thus it cannot be parameterized
    Expression r1 cannot be unified with expression r1 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public void setVisible(boolean) , public void setDrawXError(boolean)
    4
    r1.setDrawXError(false);
    17
    assertFalse(r1.equals(r2));
    17
    assertFalse(r1.equals(r2));
    17
    assertFalse(r1.equals(r2));
    Differences
    Expression1Expression2Difference
    org.jfree.chart.plot.dial.StandardDialRangeorg.jfree.chart.renderer.xy.XYErrorRendererSUBCLASS_TYPE_MISMATCH
    org.jfree.chart.plot.dial.StandardDialRangeorg.jfree.chart.renderer.xy.XYErrorRendererSUBCLASS_TYPE_MISMATCH
    Preondition Violations
    Expression r2 cannot be unified with expression r2 , because common superclass type org.jfree.util.PublicCloneable cannot be passed as an argument to public boolean equals(java.lang.Object)
    Expression r2 cannot be unified with expression r2 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public boolean equals(java.lang.Object)
    Expression r1 cannot be unified with expression r1 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public boolean equals(java.lang.Object)
    17
    assertFalse(r1.equals(r2));
    18
    r2.setVisible(false);
    18
    r2.setVisible(false);
    6
    r2.setDrawXError(false);
    Differences
    Expression1Expression2Difference
    setVisiblesetDrawXErrorMETHOD_INVOCATION_NAME_MISMATCH
    org.jfree.chart.plot.dial.StandardDialRangeorg.jfree.chart.renderer.xy.XYErrorRendererSUBCLASS_TYPE_MISMATCH
    Preondition Violations
    Expression r2.setVisible(false) cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression r2.setDrawXError(false) cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression r2.setVisible(false) is a void method call, and thus it cannot be parameterized
    Expression r2.setDrawXError(false) is a void method call, and thus it cannot be parameterized
    Expression r2 cannot be unified with expression r2 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public void setVisible(boolean) , public void setDrawXError(boolean)
    6
    r2.setDrawXError(false);
    19
    assertTrue(r1.equals(r2));
    19
    assertTrue(r1.equals(r2));
    19
    assertTrue(r1.equals(r2));
    Differences
    Expression1Expression2Difference
    org.jfree.chart.plot.dial.StandardDialRangeorg.jfree.chart.renderer.xy.XYErrorRendererSUBCLASS_TYPE_MISMATCH
    org.jfree.chart.plot.dial.StandardDialRangeorg.jfree.chart.renderer.xy.XYErrorRendererSUBCLASS_TYPE_MISMATCH
    Preondition Violations
    Expression r2 cannot be unified with expression r2 , because common superclass type org.jfree.util.PublicCloneable cannot be passed as an argument to public boolean equals(java.lang.Object)
    Expression r2 cannot be unified with expression r2 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public boolean equals(java.lang.Object)
    Expression r1 cannot be unified with expression r1 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public boolean equals(java.lang.Object)
    19
    assertTrue(r1.equals(r2));
    Precondition Violations (71)
    Row Violation
    1Expression new StandardDialRange() cannot be parameterized, because it has dependencies to/from statements that will be extracted
    2Expression new XYErrorRenderer() cannot be parameterized, because it has dependencies to/from statements that will be extracted
    3Expression new StandardDialRange() cannot be parameterized, because it has dependencies to/from statements that will be extracted
    4Expression new XYErrorRenderer() cannot be parameterized, because it has dependencies to/from statements that will be extracted
    5Expression assertTrue(r1.equals(r2)) cannot be parameterized, because it has dependencies to/from statements that will be extracted
    6Expression assertEquals(r1,r2) cannot be parameterized, because it has dependencies to/from statements that will be extracted
    7Expression assertTrue(r1.equals(r2)) is a void method call, and thus it cannot be parameterized
    8Expression assertEquals(r1,r2) is a void method call, and thus it cannot be parameterized
    9Expression assertTrue(r1.equals(r2)) cannot be parameterized, because it has dependencies to/from statements that will be extracted
    10Expression assertEquals(r1,r2) cannot be parameterized, because it has dependencies to/from statements that will be extracted
    11Expression assertTrue(r1.equals(r2)) is a void method call, and thus it cannot be parameterized
    12Expression assertEquals(r1,r2) is a void method call, and thus it cannot be parameterized
    13Unmatched statement r1.setLowerBound(1.1); cannot be moved before or after the extracted code, because it has dependencies to/from statements that will be extracted
    14Expression r2 cannot be unified with expression r2 , because common superclass type org.jfree.util.PublicCloneable cannot be passed as an argument to public boolean equals(java.lang.Object)
    15Expression r2 cannot be unified with expression r2 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public boolean equals(java.lang.Object)
    16Expression r1 cannot be unified with expression r1 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public boolean equals(java.lang.Object)
    17Unmatched statement r2.setLowerBound(1.1); cannot be moved before or after the extracted code, because it has dependencies to/from statements that will be extracted
    18Expression r2 cannot be unified with expression r2 , because common superclass type org.jfree.util.PublicCloneable cannot be passed as an argument to public boolean equals(java.lang.Object)
    19Expression r2 cannot be unified with expression r2 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public boolean equals(java.lang.Object)
    20Expression r1 cannot be unified with expression r1 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public boolean equals(java.lang.Object)
    21Unmatched statement r1.setDrawYError(false); cannot be moved before or after the extracted code, because it has dependencies to/from statements that will be extracted
    22Unmatched statement r2.setDrawYError(false); cannot be moved before or after the extracted code, because it has dependencies to/from statements that will be extracted
    23Expression r1.setUpperBound(11.1) cannot be parameterized, because it has dependencies to/from statements that will be extracted
    24Expression r1.setCapLength(9.0) cannot be parameterized, because it has dependencies to/from statements that will be extracted
    25Expression r1.setUpperBound(11.1) is a void method call, and thus it cannot be parameterized
    26Expression r1.setCapLength(9.0) is a void method call, and thus it cannot be parameterized
    27Expression r1 cannot be unified with expression r1 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public void setUpperBound(double) , public void setCapLength(double)
    28Expression r2 cannot be unified with expression r2 , because common superclass type org.jfree.util.PublicCloneable cannot be passed as an argument to public boolean equals(java.lang.Object)
    29Expression r2 cannot be unified with expression r2 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public boolean equals(java.lang.Object)
    30Expression r1 cannot be unified with expression r1 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public boolean equals(java.lang.Object)
    31Expression r2.setUpperBound(11.1) cannot be parameterized, because it has dependencies to/from statements that will be extracted
    32Expression r2.setCapLength(9.0) cannot be parameterized, because it has dependencies to/from statements that will be extracted
    33Expression r2.setUpperBound(11.1) is a void method call, and thus it cannot be parameterized
    34Expression r2.setCapLength(9.0) is a void method call, and thus it cannot be parameterized
    35Expression r2 cannot be unified with expression r2 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public void setUpperBound(double) , public void setCapLength(double)
    36Expression r2 cannot be unified with expression r2 , because common superclass type org.jfree.util.PublicCloneable cannot be passed as an argument to public boolean equals(java.lang.Object)
    37Expression r2 cannot be unified with expression r2 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public boolean equals(java.lang.Object)
    38Expression r1 cannot be unified with expression r1 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public boolean equals(java.lang.Object)
    39Expression r1.setPaint(new GradientPaint(1.0f,2.0f,Color.red,3.0f,4.0f,Color.blue)) cannot be parameterized, because it has dependencies to/from statements that will be extracted
    40Expression r1.setErrorPaint(new GradientPaint(1.0f,2.0f,Color.red,3.0f,4.0f,Color.green)) cannot be parameterized, because it has dependencies to/from statements that will be extracted
    41Expression r1.setPaint(new GradientPaint(1.0f,2.0f,Color.red,3.0f,4.0f,Color.blue)) is a void method call, and thus it cannot be parameterized
    42Expression r1.setErrorPaint(new GradientPaint(1.0f,2.0f,Color.red,3.0f,4.0f,Color.green)) is a void method call, and thus it cannot be parameterized
    43Expression r1 cannot be unified with expression r1 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public void setPaint(java.awt.Paint) , public void setErrorPaint(java.awt.Paint)
    44Expression r2 cannot be unified with expression r2 , because common superclass type org.jfree.util.PublicCloneable cannot be passed as an argument to public boolean equals(java.lang.Object)
    45Expression r2 cannot be unified with expression r2 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public boolean equals(java.lang.Object)
    46Expression r1 cannot be unified with expression r1 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public boolean equals(java.lang.Object)
    47Expression r2.setPaint(new GradientPaint(1.0f,2.0f,Color.red,3.0f,4.0f,Color.blue)) cannot be parameterized, because it has dependencies to/from statements that will be extracted
    48Expression r2.setErrorPaint(new GradientPaint(1.0f,2.0f,Color.red,3.0f,4.0f,Color.green)) cannot be parameterized, because it has dependencies to/from statements that will be extracted
    49Expression r2.setPaint(new GradientPaint(1.0f,2.0f,Color.red,3.0f,4.0f,Color.blue)) is a void method call, and thus it cannot be parameterized
    50Expression r2.setErrorPaint(new GradientPaint(1.0f,2.0f,Color.red,3.0f,4.0f,Color.green)) is a void method call, and thus it cannot be parameterized
    51Expression r2 cannot be unified with expression r2 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public void setPaint(java.awt.Paint) , public void setErrorPaint(java.awt.Paint)
    52Expression r2 cannot be unified with expression r2 , because common superclass type org.jfree.util.PublicCloneable cannot be passed as an argument to public boolean equals(java.lang.Object)
    53Expression r2 cannot be unified with expression r2 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public boolean equals(java.lang.Object)
    54Expression r1 cannot be unified with expression r1 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public boolean equals(java.lang.Object)
    55Expression r1.setVisible(false) cannot be parameterized, because it has dependencies to/from statements that will be extracted
    56Expression r1.setDrawXError(false) cannot be parameterized, because it has dependencies to/from statements that will be extracted
    57Expression r1.setVisible(false) is a void method call, and thus it cannot be parameterized
    58Expression r1.setDrawXError(false) is a void method call, and thus it cannot be parameterized
    59Expression r1 cannot be unified with expression r1 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public void setVisible(boolean) , public void setDrawXError(boolean)
    60Expression r2 cannot be unified with expression r2 , because common superclass type org.jfree.util.PublicCloneable cannot be passed as an argument to public boolean equals(java.lang.Object)
    61Expression r2 cannot be unified with expression r2 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public boolean equals(java.lang.Object)
    62Expression r1 cannot be unified with expression r1 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public boolean equals(java.lang.Object)
    63Expression r2.setVisible(false) cannot be parameterized, because it has dependencies to/from statements that will be extracted
    64Expression r2.setDrawXError(false) cannot be parameterized, because it has dependencies to/from statements that will be extracted
    65Expression r2.setVisible(false) is a void method call, and thus it cannot be parameterized
    66Expression r2.setDrawXError(false) is a void method call, and thus it cannot be parameterized
    67Expression r2 cannot be unified with expression r2 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public void setVisible(boolean) , public void setDrawXError(boolean)
    68Expression r2 cannot be unified with expression r2 , because common superclass type org.jfree.util.PublicCloneable cannot be passed as an argument to public boolean equals(java.lang.Object)
    69Expression r2 cannot be unified with expression r2 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public boolean equals(java.lang.Object)
    70Expression r1 cannot be unified with expression r1 , because common superclass org.jfree.util.PublicCloneable does not declare member(s) public boolean equals(java.lang.Object)
    71Clone fragment #1 returns variables r1, r2 , while Clone fragment #2 returns variables r1, r2