Search in sources :

Example 1 with ListUniEntity

use of org.hibernate.envers.test.entities.manytomany.unidirectional.ListUniEntity in project hibernate-orm by hibernate.

the class BasicUniList method testHistoryOfEdIng1.

@Test
public void testHistoryOfEdIng1() {
    StrTestEntity ed1 = getEntityManager().find(StrTestEntity.class, ed1_id);
    StrTestEntity ed2 = getEntityManager().find(StrTestEntity.class, ed2_id);
    ListUniEntity rev1 = getAuditReader().find(ListUniEntity.class, ing1_id, 1);
    ListUniEntity rev2 = getAuditReader().find(ListUniEntity.class, ing1_id, 2);
    ListUniEntity rev3 = getAuditReader().find(ListUniEntity.class, ing1_id, 3);
    ListUniEntity rev4 = getAuditReader().find(ListUniEntity.class, ing1_id, 4);
    ListUniEntity rev5 = getAuditReader().find(ListUniEntity.class, ing1_id, 5);
    assert rev1.getReferences().equals(Collections.EMPTY_LIST);
    assert TestTools.checkCollection(rev2.getReferences(), ed1);
    assert TestTools.checkCollection(rev3.getReferences(), ed1, ed2);
    assert TestTools.checkCollection(rev4.getReferences(), ed2);
    assert rev5.getReferences().equals(Collections.EMPTY_LIST);
}
Also used : StrTestEntity(org.hibernate.envers.test.entities.StrTestEntity) ListUniEntity(org.hibernate.envers.test.entities.manytomany.unidirectional.ListUniEntity) Test(org.junit.Test)

Example 2 with ListUniEntity

use of org.hibernate.envers.test.entities.manytomany.unidirectional.ListUniEntity in project hibernate-orm by hibernate.

the class BasicUniList method testHistoryOfEdIng2.

@Test
public void testHistoryOfEdIng2() {
    StrTestEntity ed1 = getEntityManager().find(StrTestEntity.class, ed1_id);
    StrTestEntity ed2 = getEntityManager().find(StrTestEntity.class, ed2_id);
    ListUniEntity rev1 = getAuditReader().find(ListUniEntity.class, ing2_id, 1);
    ListUniEntity rev2 = getAuditReader().find(ListUniEntity.class, ing2_id, 2);
    ListUniEntity rev3 = getAuditReader().find(ListUniEntity.class, ing2_id, 3);
    ListUniEntity rev4 = getAuditReader().find(ListUniEntity.class, ing2_id, 4);
    ListUniEntity rev5 = getAuditReader().find(ListUniEntity.class, ing2_id, 5);
    assert rev1.getReferences().equals(Collections.EMPTY_LIST);
    assert TestTools.checkCollection(rev2.getReferences(), ed1, ed2);
    assert TestTools.checkCollection(rev3.getReferences(), ed1, ed2);
    assert TestTools.checkCollection(rev4.getReferences(), ed1, ed2);
    assert TestTools.checkCollection(rev5.getReferences(), ed1, ed2);
}
Also used : StrTestEntity(org.hibernate.envers.test.entities.StrTestEntity) ListUniEntity(org.hibernate.envers.test.entities.manytomany.unidirectional.ListUniEntity) Test(org.junit.Test)

Example 3 with ListUniEntity

use of org.hibernate.envers.test.entities.manytomany.unidirectional.ListUniEntity in project hibernate-orm by hibernate.

the class BasicUniList method initData.

@Test
@Priority(10)
public void initData() {
    EntityManager em = getEntityManager();
    StrTestEntity ed1 = new StrTestEntity("data_ed_1");
    StrTestEntity ed2 = new StrTestEntity("data_ed_2");
    ListUniEntity ing1 = new ListUniEntity(3, "data_ing_1");
    ListUniEntity ing2 = new ListUniEntity(4, "data_ing_2");
    // Revision 1
    em.getTransaction().begin();
    em.persist(ed1);
    em.persist(ed2);
    em.persist(ing1);
    em.persist(ing2);
    em.getTransaction().commit();
    // Revision 2
    em.getTransaction().begin();
    ing1 = em.find(ListUniEntity.class, ing1.getId());
    ing2 = em.find(ListUniEntity.class, ing2.getId());
    ed1 = em.find(StrTestEntity.class, ed1.getId());
    ed2 = em.find(StrTestEntity.class, ed2.getId());
    ing1.setReferences(new ArrayList<StrTestEntity>());
    ing1.getReferences().add(ed1);
    ing2.setReferences(new ArrayList<StrTestEntity>());
    ing2.getReferences().add(ed1);
    ing2.getReferences().add(ed2);
    em.getTransaction().commit();
    // Revision 3
    em.getTransaction().begin();
    ing1 = em.find(ListUniEntity.class, ing1.getId());
    ed2 = em.find(StrTestEntity.class, ed2.getId());
    ed1 = em.find(StrTestEntity.class, ed1.getId());
    ing1.getReferences().add(ed2);
    em.getTransaction().commit();
    // Revision 4
    em.getTransaction().begin();
    ing1 = em.find(ListUniEntity.class, ing1.getId());
    ed2 = em.find(StrTestEntity.class, ed2.getId());
    ed1 = em.find(StrTestEntity.class, ed1.getId());
    ing1.getReferences().remove(ed1);
    em.getTransaction().commit();
    // Revision 5
    em.getTransaction().begin();
    ing1 = em.find(ListUniEntity.class, ing1.getId());
    ing1.setReferences(null);
    em.getTransaction().commit();
    // 
    ed1_id = ed1.getId();
    ed2_id = ed2.getId();
    ing1_id = ing1.getId();
    ing2_id = ing2.getId();
}
Also used : StrTestEntity(org.hibernate.envers.test.entities.StrTestEntity) EntityManager(javax.persistence.EntityManager) ListUniEntity(org.hibernate.envers.test.entities.manytomany.unidirectional.ListUniEntity) Test(org.junit.Test) Priority(org.hibernate.envers.test.Priority)

Aggregations

StrTestEntity (org.hibernate.envers.test.entities.StrTestEntity)3 ListUniEntity (org.hibernate.envers.test.entities.manytomany.unidirectional.ListUniEntity)3 Test (org.junit.Test)3 EntityManager (javax.persistence.EntityManager)1 Priority (org.hibernate.envers.test.Priority)1