OpenPojo
![Maven Central](https://maven-badges.herokuapp.com/maven-central/com.openpojo/openpojo/badge.svg)
POJO Testing & Identity Management Made Trivial
Maven Group Plugin | Latest Version |
---|
com.openpojo.openpojo | 0.8.13 |
com.googlecode.openpojo.openpojo | 0.6.5 - Deprecated |
Testing Example
public class PojoTest {
private static final int EXPECTED_CLASS_COUNT = 1;
private static final String POJO_PACKAGE = "com.openpojo.sample";
@Test
public void ensureExpectedPojoCount() {
List <PojoClass> pojoClasses = PojoClassFactory.getPojoClasses(POJO_PACKAGE,
new FilterPackageInfo());
Affirm.affirmEquals("Classes added / removed?", EXPECTED_CLASS_COUNT, pojoClasses.size());
}
@Test
public void testPojoStructureAndBehavior() {
Validator validator = ValidatorBuilder.create()
.with(new GetterMustExistRule())
.with(new SetterMustExistRule())
.with(new SetterTester())
.with(new GetterTester())
.build();
validator.validate(POJO_PACKAGE, new FilterPackageInfo());
}
}
Identity Management Example
public class Person {
@BusinessKey(caseSensitive = false)
private String lastName;
@Override
public boolean equals(Object obj) {
return BusinessIdentity.areEqual(this, obj);
}
@Override
public int hashCode() {
return BusinessIdentity.getHashCode(this);
}
@Override
public String toString() {
return BusinessIdentity.toString(this);
}
}
For more examples and the tutorials see the Wiki