domain.addFilter(changeSetFilter);
domain.getEntityResolver().getCallbackRegistry().addListener(changeSetFilter);
ObjectContext context = runtime.getContext();
Auditable2 a1 = Cayenne.objectForPK(context, Auditable2.class, 1);
Auditable2 a2 = Cayenne.objectForPK(context, Auditable2.class, 2);
Auditable2 a3 = Cayenne.objectForPK(context, Auditable2.class, 3);
a1.setCharProperty1("__");
a2.setCharProperty2("__");
a3.setCharProperty1("__");
a3.setCharProperty2("__");
context.commitChanges();
assertEquals(2, processor.size);
assertTrue(processor.audited.get(AuditableOperation.UPDATE).contains(a2));