And extends Logic { @Override public int hashCode() { int code = super.hashCode(); return code + 1; } And();  And(Constraint... subConstraints);  And(List<Constraint> subConstraints); @Override String toString(); @Override boolean equals(Object a); @Override int hashCode();  }
@Test public void testHashcode() { Constraint myconstraint1 = createMock(Constraint.class); Constraint myconstraint2 = createMock(Constraint.class); And myand = new And(myconstraint1, myconstraint2); Assert.assertNotSame(0, myand.hashCode()); }