@Test
public void testEquals() {

    Expression expression = new Expression("my.expression", "MYLANG");
    Attribute attribute = new Attribute("my.value", expression, "role1,role2", "myrenderer");
    Attribute attribute2 = new Attribute(attribute);
    assertTrue(attribute.equals(attribute2));
    attribute2.setRenderer("anotherRenderer");
    assertFalse(attribute.equals(attribute2));
    attribute2 = new Attribute(attribute);
    attribute2.setRole("otherrole");
    assertFalse(attribute.equals(attribute2));
    attribute2 = new Attribute(attribute);
    attribute2.setExpressionObject(new Expression("another.expression", "MYLANG"));
    assertFalse(attribute.equals(attribute2));
    attribute2 = new Attribute(attribute);
    attribute2.setValue("anothervalue");
    assertFalse(attribute.equals(attribute2));
}