Search in sources :

Example 1 with ManyToManyNotAuditedNullEntity

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

the class ProxyIdentifier method testNullReferenceWithNotFoundActionIgnore.

@Test
@TestForIssue(jiraKey = "HHH-8174")
public void testNullReferenceWithNotFoundActionIgnore() {
    ManyToOneNotAuditedNullEntity mtoRev2 = getAuditReader().find(ManyToOneNotAuditedNullEntity.class, mtonane1.getId(), 2);
    Assert.assertEquals(mtonane1, mtoRev2);
    Assert.assertNull(mtoRev2.getReference());
    ManyToManyNotAuditedNullEntity mtmRev2 = getAuditReader().find(ManyToManyNotAuditedNullEntity.class, mtmnane1.getId(), 2);
    Assert.assertEquals(mtmnane1, mtmRev2);
    Assert.assertTrue(mtmRev2.getReferences().isEmpty());
    OneToManyNotAuditedNullEntity otmRev2 = getAuditReader().find(OneToManyNotAuditedNullEntity.class, otmnane1.getId(), 2);
    Assert.assertEquals(otmnane1, otmRev2);
    Assert.assertTrue(otmRev2.getReferences().isEmpty());
}
Also used : OneToManyNotAuditedNullEntity(org.hibernate.envers.test.entities.onetomany.OneToManyNotAuditedNullEntity) ManyToOneNotAuditedNullEntity(org.hibernate.envers.test.entities.manytoone.unidirectional.ManyToOneNotAuditedNullEntity) ExtManyToOneNotAuditedNullEntity(org.hibernate.envers.test.entities.manytoone.unidirectional.ExtManyToOneNotAuditedNullEntity) ManyToManyNotAuditedNullEntity(org.hibernate.envers.test.entities.manytomany.unidirectional.ManyToManyNotAuditedNullEntity) Test(org.junit.Test) TestForIssue(org.hibernate.testing.TestForIssue)

Example 2 with ManyToManyNotAuditedNullEntity

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

the class ProxyIdentifier method initData.

@Test
@Priority(10)
public void initData() {
    EntityManager em = getEntityManager();
    uste1 = new UnversionedStrTestEntity("str1");
    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());
    tnae1 = new TargetNotAuditedEntity(1, "tnae1", uste1);
    em.persist(tnae1);
    em.getTransaction().commit();
    // Revision 2
    em.getTransaction().begin();
    uste2 = em.find(UnversionedStrTestEntity.class, uste2.getId());
    mtonane1 = new ManyToOneNotAuditedNullEntity(2, "mtonane1", uste2);
    mtmnane1 = new ManyToManyNotAuditedNullEntity(3, "mtmnane1");
    mtmnane1.getReferences().add(uste2);
    otmnane1 = new OneToManyNotAuditedNullEntity(4, "otmnane1");
    otmnane1.getReferences().add(uste2);
    emtonane1 = new ExtManyToOneNotAuditedNullEntity(5, "emtonane1", uste2, "extension");
    em.persist(mtonane1);
    em.persist(mtmnane1);
    em.persist(otmnane1);
    em.persist(emtonane1);
    em.getTransaction().commit();
    em.clear();
    // Revision 3
    // Remove not audited target entity, so we can verify null reference
    // when @NotFound(action = NotFoundAction.IGNORE) applied.
    em.getTransaction().begin();
    ManyToOneNotAuditedNullEntity tmp1 = em.find(ManyToOneNotAuditedNullEntity.class, mtonane1.getId());
    tmp1.setReference(null);
    tmp1 = em.merge(tmp1);
    ManyToManyNotAuditedNullEntity tmp2 = em.find(ManyToManyNotAuditedNullEntity.class, mtmnane1.getId());
    tmp2.setReferences(null);
    tmp2 = em.merge(tmp2);
    OneToManyNotAuditedNullEntity tmp3 = em.find(OneToManyNotAuditedNullEntity.class, otmnane1.getId());
    tmp3.setReferences(null);
    tmp3 = em.merge(tmp3);
    ExtManyToOneNotAuditedNullEntity tmp4 = em.find(ExtManyToOneNotAuditedNullEntity.class, emtonane1.getId());
    tmp4.setReference(null);
    tmp4 = em.merge(tmp4);
    em.remove(em.getReference(UnversionedStrTestEntity.class, uste2.getId()));
    em.getTransaction().commit();
    em.close();
}
Also used : EntityManager(javax.persistence.EntityManager) OneToManyNotAuditedNullEntity(org.hibernate.envers.test.entities.onetomany.OneToManyNotAuditedNullEntity) UnversionedStrTestEntity(org.hibernate.envers.test.entities.UnversionedStrTestEntity) ManyToOneNotAuditedNullEntity(org.hibernate.envers.test.entities.manytoone.unidirectional.ManyToOneNotAuditedNullEntity) ExtManyToOneNotAuditedNullEntity(org.hibernate.envers.test.entities.manytoone.unidirectional.ExtManyToOneNotAuditedNullEntity) ExtManyToOneNotAuditedNullEntity(org.hibernate.envers.test.entities.manytoone.unidirectional.ExtManyToOneNotAuditedNullEntity) TargetNotAuditedEntity(org.hibernate.envers.test.entities.manytoone.unidirectional.TargetNotAuditedEntity) ManyToManyNotAuditedNullEntity(org.hibernate.envers.test.entities.manytomany.unidirectional.ManyToManyNotAuditedNullEntity) Test(org.junit.Test) Priority(org.hibernate.envers.test.Priority)

Aggregations

ManyToManyNotAuditedNullEntity (org.hibernate.envers.test.entities.manytomany.unidirectional.ManyToManyNotAuditedNullEntity)2 ExtManyToOneNotAuditedNullEntity (org.hibernate.envers.test.entities.manytoone.unidirectional.ExtManyToOneNotAuditedNullEntity)2 ManyToOneNotAuditedNullEntity (org.hibernate.envers.test.entities.manytoone.unidirectional.ManyToOneNotAuditedNullEntity)2 OneToManyNotAuditedNullEntity (org.hibernate.envers.test.entities.onetomany.OneToManyNotAuditedNullEntity)2 Test (org.junit.Test)2 EntityManager (javax.persistence.EntityManager)1 Priority (org.hibernate.envers.test.Priority)1 UnversionedStrTestEntity (org.hibernate.envers.test.entities.UnversionedStrTestEntity)1 TargetNotAuditedEntity (org.hibernate.envers.test.entities.manytoone.unidirectional.TargetNotAuditedEntity)1 TestForIssue (org.hibernate.testing.TestForIssue)1