@Test public void testHistoryOfTnae2_id() { UnversionedStrTestEntity uste1 = getEntityManager().find(UnversionedStrTestEntity.class, uste1_id); UnversionedStrTestEntity uste2 = getEntityManager().find(UnversionedStrTestEntity.class, uste2_id); M2MTargetNotAuditedEntity rev1 = getAuditReader().find(M2MTargetNotAuditedEntity.class, tnae2_id, 1); M2MTargetNotAuditedEntity rev2 = getAuditReader().find(M2MTargetNotAuditedEntity.class, tnae2_id, 2); M2MTargetNotAuditedEntity rev3 = getAuditReader().find(M2MTargetNotAuditedEntity.class, tnae2_id, 3); M2MTargetNotAuditedEntity rev4 = getAuditReader().find(M2MTargetNotAuditedEntity.class, tnae2_id, 4); assertTrue(checkList(rev1.getReferences(), uste1, uste2)); assertTrue(checkList(rev2.getReferences(), uste2)); assertTrue(checkList(rev3.getReferences())); assertTrue(checkList(rev4.getReferences(), uste1)); }
@Test @Priority(10) public void initData() { EntityManager em = getEntityManager(); UnversionedStrTestEntity uste1 = new UnversionedStrTestEntity("str1"); UnversionedStrTestEntity uste2 = new UnversionedStrTestEntity("str2"); // No revision em.getTransaction().begin(); em.persist(uste1); em.persist(uste2); em.getTransaction().commit(); // Revision 1 em.getTransaction().begin(); uste1 = em.find(UnversionedStrTestEntity.class, uste1.getId()); uste2 = em.find(UnversionedStrTestEntity.class, uste2.getId()); M2MTargetNotAuditedEntity tnae1 = new M2MTargetNotAuditedEntity(1, "tnae1", new ArrayList<UnversionedStrTestEntity>()); M2MTargetNotAuditedEntity tnae2 = new M2MTargetNotAuditedEntity(2, "tnae2", new ArrayList<UnversionedStrTestEntity>()); tnae2.getReferences().add(uste1); tnae2.getReferences().add(uste2); em.persist(tnae1); em.persist(tnae2); em.getTransaction().commit(); // Revision 2 em.getTransaction().begin(); tnae1 = em.find(M2MTargetNotAuditedEntity.class, tnae1.getId()); tnae2 = em.find(M2MTargetNotAuditedEntity.class, tnae2.getId()); tnae1.getReferences().add(uste1); tnae2.getReferences().remove(uste1); em.getTransaction().commit(); // Revision 3 em.getTransaction().begin(); tnae1 = em.find(M2MTargetNotAuditedEntity.class, tnae1.getId()); tnae2 = em.find(M2MTargetNotAuditedEntity.class, tnae2.getId()); // field not changed!!! tnae1.getReferences().add(uste1); tnae2.getReferences().remove(uste2); em.getTransaction().commit(); // Revision 4 em.getTransaction().begin(); tnae1 = em.find(M2MTargetNotAuditedEntity.class, tnae1.getId()); tnae2 = em.find(M2MTargetNotAuditedEntity.class, tnae2.getId()); tnae1.getReferences().add(uste2); tnae2.getReferences().add(uste1); em.getTransaction().commit(); // tnae1_id = tnae1.getId(); tnae2_id = tnae2.getId(); uste1_id = uste1.getId(); uste2_id = uste2.getId(); }