public void testRevisionsforValidityStrategyoverManytoOne() throws Exception {
SLSBAuditMO slsbAudit = lookup("SLSBAuditMO", SLSBAuditMO.class);
CustomerMO c1 = slsbAudit.createCustomer("MADHUMITA", "SADHUKHAN", "WORK", "+420", "543789654");
PhoneMO p1 = c1.getPhones().get(0);
p1.setType("Emergency");
p1.setCustomer(c1);
slsbAudit.updatePhone(p1);
c1.setFirstname("Madhu");
slsbAudit.updateCustomer(c1);
int c = slsbAudit.retrieveOldPhoneListSizeFromCustomer(c1.getId());
Assert.assertEquals(2, c);
String phoneType = slsbAudit.retrieveOldPhoneListVersionFromCustomer(c1.getId());
// check that updating Phone updates audit information fetched from Customer
Assert.assertEquals("WORK", phoneType);
PhoneMO p3 = slsbAudit.createPhone("WORK", "+420", "543789654");
p3.setCustomer(c1);
slsbAudit.updatePhone(p3);
c1.getPhones().add(p3);
slsbAudit.updateCustomer(c1);
PhoneMO p4 = slsbAudit.createPhone("WORK", "+420", "88899912");
slsbAudit.updatePhone(p4);
c1.getPhones().add(p4);
System.out.println("PhoneList size::" + c1.getPhones().size());
slsbAudit.updateCustomer(c1);