Skip to content

Commit 79fec05

Browse files
committed
HHH-19871 --wip-- Envers migration to JUnit 6
- `org.hibernate.orm.test.envers.integration.auditReader`
1 parent 59ddb03 commit 79fec05

File tree

2 files changed

+141
-134
lines changed

2 files changed

+141
-134
lines changed

hibernate-envers/src/test/java/org/hibernate/orm/test/envers/integration/auditReader/AuditReaderAPITest.java

Lines changed: 88 additions & 81 deletions
Original file line numberDiff line numberDiff line change
@@ -4,112 +4,119 @@
44
*/
55
package org.hibernate.orm.test.envers.integration.auditReader;
66

7-
import java.util.Arrays;
8-
import java.util.List;
9-
10-
import jakarta.persistence.EntityManager;
11-
7+
import org.hibernate.envers.AuditReaderFactory;
128
import org.hibernate.envers.enhanced.SequenceIdRevisionEntity;
139
import org.hibernate.envers.exception.NotAuditedException;
14-
import org.hibernate.orm.test.envers.BaseEnversJPAFunctionalTestCase;
15-
import org.hibernate.orm.test.envers.Priority;
10+
import org.hibernate.testing.envers.junit.EnversTest;
11+
import org.hibernate.testing.orm.junit.BeforeClassTemplate;
12+
import org.hibernate.testing.orm.junit.EntityManagerFactoryScope;
13+
import org.hibernate.testing.orm.junit.Jpa;
14+
import org.junit.jupiter.api.Test;
1615

17-
import org.hibernate.testing.orm.junit.JiraKey;
18-
import org.junit.Test;
16+
import java.util.Arrays;
17+
import java.util.List;
1918

2019
import static org.hibernate.testing.junit4.ExtraAssertions.assertTyping;
21-
import static org.junit.Assert.assertEquals;
22-
import static org.junit.Assert.assertTrue;
23-
import static org.junit.Assert.fail;
20+
import static org.junit.jupiter.api.Assertions.assertEquals;
21+
import static org.junit.jupiter.api.Assertions.assertFalse;
22+
import static org.junit.jupiter.api.Assertions.assertTrue;
23+
import static org.junit.jupiter.api.Assertions.fail;
2424

2525
/**
2626
* A test which checks the correct behavior of AuditReader.isEntityClassAudited(Class entityClass).
2727
*
2828
* @author Hernan Chanfreau
2929
*/
30-
public class AuditReaderAPITest extends BaseEnversJPAFunctionalTestCase {
31-
@Override
32-
protected Class<?>[] getAnnotatedClasses() {
33-
return new Class[] {AuditedTestEntity.class, NotAuditedTestEntity.class};
34-
}
35-
36-
@Test
37-
@Priority(10)
38-
public void initData() {
39-
EntityManager em = getEntityManager();
40-
em.getTransaction().begin();
41-
AuditedTestEntity ent1 = new AuditedTestEntity( 1, "str1" );
42-
NotAuditedTestEntity ent2 = new NotAuditedTestEntity( 1, "str1" );
43-
44-
em.persist( ent1 );
45-
em.persist( ent2 );
46-
em.getTransaction().commit();
47-
48-
em.getTransaction().begin();
49-
50-
ent1 = em.find( AuditedTestEntity.class, 1 );
51-
ent2 = em.find( NotAuditedTestEntity.class, 1 );
52-
ent1.setStr1( "str2" );
53-
ent2.setStr1( "str2" );
54-
em.getTransaction().commit();
55-
56-
em.getTransaction().begin();
57-
ent1 = em.find( AuditedTestEntity.class, 1 );
58-
em.remove( ent1 );
59-
em.getTransaction().commit();
30+
@EnversTest
31+
@Jpa(annotatedClasses = {AuditedTestEntity.class, NotAuditedTestEntity.class})
32+
public class AuditReaderAPITest {
33+
34+
@BeforeClassTemplate
35+
public void initData(EntityManagerFactoryScope scope) {
36+
scope.inEntityManager( em -> {
37+
em.getTransaction().begin();
38+
AuditedTestEntity ent1 = new AuditedTestEntity( 1, "str1" );
39+
NotAuditedTestEntity ent2 = new NotAuditedTestEntity( 1, "str1" );
40+
41+
em.persist( ent1 );
42+
em.persist( ent2 );
43+
em.getTransaction().commit();
44+
45+
em.getTransaction().begin();
46+
47+
ent1 = em.find( AuditedTestEntity.class, 1 );
48+
ent2 = em.find( NotAuditedTestEntity.class, 1 );
49+
ent1.setStr1( "str2" );
50+
ent2.setStr1( "str2" );
51+
em.getTransaction().commit();
52+
53+
em.getTransaction().begin();
54+
ent1 = em.find( AuditedTestEntity.class, 1 );
55+
em.remove( ent1 );
56+
em.getTransaction().commit();
57+
} );
6058
}
6159

6260
@Test
63-
public void testIsEntityClassAuditedForAuditedEntity() {
64-
assertTrue( getAuditReader().isEntityClassAudited( AuditedTestEntity.class ) );
65-
assertEquals( Arrays.asList( 1, 2, 3 ), getAuditReader().getRevisions( AuditedTestEntity.class, 1 ) );
61+
public void testIsEntityClassAuditedForAuditedEntity(EntityManagerFactoryScope scope) {
62+
scope.inEntityManager( em -> {
63+
final var auditReader = AuditReaderFactory.get( em );
64+
assertTrue( auditReader.isEntityClassAudited( AuditedTestEntity.class ) );
65+
assertEquals( Arrays.asList( 1, 2, 3 ),
66+
auditReader.getRevisions( AuditedTestEntity.class, 1 ) );
67+
} );
6668
}
6769

6870
@Test
69-
public void testIsEntityClassAuditedForNotAuditedEntity() {
70-
71-
assert !getAuditReader().isEntityClassAudited( NotAuditedTestEntity.class );
72-
73-
try {
74-
getAuditReader().getRevisions( NotAuditedTestEntity.class, 1 );
75-
}
76-
catch (NotAuditedException nae) {
77-
// it's ok because the entity is not audited
78-
assert true;
79-
}
71+
public void testIsEntityClassAuditedForNotAuditedEntity(EntityManagerFactoryScope scope) {
72+
scope.inEntityManager( em -> {
73+
final var auditReader = AuditReaderFactory.get( em );
74+
assertFalse( auditReader.isEntityClassAudited( NotAuditedTestEntity.class ) );
75+
76+
try {
77+
auditReader.getRevisions( NotAuditedTestEntity.class, 1 );
78+
fail( "Expected a NotAuditedException" );
79+
}
80+
catch (NotAuditedException nae) {
81+
// expected
82+
}
83+
} );
8084
}
8185

8286
@Test
83-
@JiraKey( value = "HHH-7555" )
84-
public void testFindRevisionEntitiesWithoutDeletions() {
85-
List<?> revisionInfos = getAuditReader().createQuery()
86-
.forRevisionsOfEntity( AuditedTestEntity.class, false )
87-
.getResultList();
88-
assertEquals( 2, revisionInfos.size() );
89-
revisionInfos.forEach( e -> assertTyping( SequenceIdRevisionEntity.class, e ) );
87+
public void testFindRevisionEntitiesWithoutDeletions(EntityManagerFactoryScope scope) {
88+
scope.inEntityManager( em -> {
89+
List<?> revisionInfos = AuditReaderFactory.get( em ).createQuery()
90+
.forRevisionsOfEntity( AuditedTestEntity.class, false )
91+
.getResultList();
92+
assertEquals( 2, revisionInfos.size() );
93+
revisionInfos.forEach( e -> assertTyping( SequenceIdRevisionEntity.class, e ) );
94+
} );
9095
}
9196

9297
@Test
93-
@JiraKey( value = "HHH-7555" )
94-
public void testFindRevisionEntitiesWithDeletions() {
95-
List<?> revisionInfos = getAuditReader().createQuery()
96-
.forRevisionsOfEntity( AuditedTestEntity.class, true )
97-
.getResultList();
98-
assertEquals( 3, revisionInfos.size() );
99-
revisionInfos.forEach( e -> assertTyping( SequenceIdRevisionEntity.class, e ) );
98+
public void testFindRevisionEntitiesWithDeletions(EntityManagerFactoryScope scope) {
99+
scope.inEntityManager( em -> {
100+
List<?> revisionInfos = AuditReaderFactory.get( em ).createQuery()
101+
.forRevisionsOfEntity( AuditedTestEntity.class, true )
102+
.getResultList();
103+
assertEquals( 3, revisionInfos.size() );
104+
revisionInfos.forEach( e -> assertTyping( SequenceIdRevisionEntity.class, e ) );
105+
} );
100106
}
101107

102108
@Test
103-
@JiraKey( value = "HHH-7555" )
104-
public void testFindRevisionEntitiesNonAuditedEntity() {
105-
try {
106-
List<?> revisionInfos = getAuditReader().createQuery()
107-
.forRevisionsOfEntity( NotAuditedTestEntity.class, false )
108-
.getResultList();
109-
fail( "Expected a NotAuditedException" );
110-
}
111-
catch ( NotAuditedException e ) {
112-
// expected
113-
}
109+
public void testFindRevisionEntitiesNonAuditedEntity(EntityManagerFactoryScope scope) {
110+
scope.inEntityManager( em -> {
111+
try {
112+
List<?> revisionInfos = AuditReaderFactory.get( em ).createQuery()
113+
.forRevisionsOfEntity( NotAuditedTestEntity.class, false )
114+
.getResultList();
115+
fail( "Expected a NotAuditedException" );
116+
}
117+
catch (NotAuditedException e) {
118+
// expected
119+
}
120+
} );
114121
}
115122
}

hibernate-envers/src/test/java/org/hibernate/orm/test/envers/integration/auditReader/FindByRevisionExactMatchOptionTest.java

Lines changed: 53 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -4,21 +4,22 @@
44
*/
55
package org.hibernate.orm.test.envers.integration.auditReader;
66

7-
import java.util.Arrays;
8-
import java.util.Map;
9-
107
import org.hibernate.envers.AuditReader;
8+
import org.hibernate.envers.AuditReaderFactory;
119
import org.hibernate.envers.configuration.EnversSettings;
12-
import org.hibernate.orm.test.envers.BaseEnversJPAFunctionalTestCase;
13-
import org.hibernate.orm.test.envers.Priority;
1410
import org.hibernate.orm.test.envers.entities.IntNoAutoIdTestEntity;
15-
import org.junit.Test;
16-
11+
import org.hibernate.testing.envers.junit.EnversTest;
12+
import org.hibernate.testing.orm.junit.BeforeClassTemplate;
13+
import org.hibernate.testing.orm.junit.EntityManagerFactoryScope;
1714
import org.hibernate.testing.orm.junit.JiraKey;
15+
import org.hibernate.testing.orm.junit.Jpa;
16+
import org.hibernate.testing.orm.junit.Setting;
17+
import org.junit.jupiter.api.Test;
1818

19-
import static junit.framework.TestCase.assertNull;
20-
import static org.hibernate.testing.transaction.TransactionUtil.doInJPA;
21-
import static org.junit.Assert.assertEquals;
19+
import java.util.Arrays;
20+
21+
import static org.junit.jupiter.api.Assertions.assertEquals;
22+
import static org.junit.jupiter.api.Assertions.assertNull;
2223

2324
/**
2425
* A test which verifies the behavior of the various {@link AuditReader} find implementations when the
@@ -27,70 +28,69 @@
2728
* @author Chris Cranford
2829
*/
2930
@JiraKey(value = "HHH-13500")
30-
public class FindByRevisionExactMatchOptionTest extends BaseEnversJPAFunctionalTestCase {
31-
@Override
32-
protected void addConfigOptions(Map options) {
33-
super.addConfigOptions( options );
34-
35-
options.put( EnversSettings.FIND_BY_REVISION_EXACT_MATCH, "true" );
36-
}
37-
38-
@Override
39-
protected Class<?>[] getAnnotatedClasses() {
40-
return new Class<?>[] { IntNoAutoIdTestEntity.class };
41-
}
42-
43-
@Priority(10)
44-
@Test
45-
public void initData() {
31+
@EnversTest
32+
@Jpa(annotatedClasses = {IntNoAutoIdTestEntity.class},
33+
integrationSettings = @Setting(name = EnversSettings.FIND_BY_REVISION_EXACT_MATCH, value = "true"))
34+
public class FindByRevisionExactMatchOptionTest {
35+
@BeforeClassTemplate
36+
public void initData(EntityManagerFactoryScope scope) {
4637
// Insert entity with id=1, numVal=1, revision 1
47-
doInJPA( this::entityManagerFactory, entityManager -> {
48-
final IntNoAutoIdTestEntity entity = new IntNoAutoIdTestEntity( 1, 1 );
49-
entityManager.persist( entity );
38+
scope.inTransaction( em -> {
39+
final IntNoAutoIdTestEntity entity1 = new IntNoAutoIdTestEntity( 1, 1 );
40+
em.persist( entity1 );
5041
} );
5142

5243
// Update entity with id=1, setting numVal=11, revision 2
53-
doInJPA( this::entityManagerFactory, entityManager -> {
54-
final IntNoAutoIdTestEntity entity = entityManager.find( IntNoAutoIdTestEntity.class, 1 );
44+
scope.inTransaction( em -> {
45+
final IntNoAutoIdTestEntity entity = em.find( IntNoAutoIdTestEntity.class, 1 );
5546
entity.setNumVal( 11 );
56-
entityManager.merge( entity );
47+
em.merge( entity );
5748
} );
5849

5950
// Insert entity with id=2, numVal=2, revision 3
60-
doInJPA( this::entityManagerFactory, entityManager -> {
61-
final IntNoAutoIdTestEntity entity = new IntNoAutoIdTestEntity( 2, 2 );
62-
entityManager.persist( entity );
51+
scope.inTransaction( em -> {
52+
final IntNoAutoIdTestEntity entity2 = new IntNoAutoIdTestEntity( 2, 2 );
53+
em.persist( entity2 );
6354
} );
6455

6556
// Update entity with id=2, setting numVal=22, revision 4
66-
doInJPA( this::entityManagerFactory, entityManager -> {
67-
final IntNoAutoIdTestEntity entity = entityManager.find( IntNoAutoIdTestEntity.class, 2 );
57+
scope.inTransaction( em -> {
58+
final IntNoAutoIdTestEntity entity = em.find( IntNoAutoIdTestEntity.class, 2 );
6859
entity.setNumVal( 22 );
69-
entityManager.merge( entity );
60+
em.merge( entity );
7061
} );
7162
}
7263

7364
@Test
74-
public void testRevisionCounts() {
75-
assertEquals( Arrays.asList( 1, 2 ), getAuditReader().getRevisions( IntNoAutoIdTestEntity.class, 1 ) );
76-
assertEquals( Arrays.asList( 3, 4 ), getAuditReader().getRevisions( IntNoAutoIdTestEntity.class, 2 ) );
65+
public void testRevisionCounts(EntityManagerFactoryScope scope) {
66+
scope.inEntityManager( em -> {
67+
final var auditReader = AuditReaderFactory.get( em );
68+
assertEquals( Arrays.asList( 1, 2 ),
69+
auditReader.getRevisions( IntNoAutoIdTestEntity.class, 1 ) );
70+
assertEquals( Arrays.asList( 3, 4 ),
71+
auditReader.getRevisions( IntNoAutoIdTestEntity.class, 2 ) );
72+
} );
7773
}
7874

7975
@Test
80-
public void testFindEntityId1() {
81-
final AuditReader auditReader = getAuditReader();
82-
assertEquals( new IntNoAutoIdTestEntity( 1, 1 ), auditReader.find( IntNoAutoIdTestEntity.class, 1, 1 ) );
83-
assertEquals( new IntNoAutoIdTestEntity( 11, 1 ), auditReader.find( IntNoAutoIdTestEntity.class, 1, 2 ) );
84-
assertNull( auditReader.find( IntNoAutoIdTestEntity.class, 1, 3 ) );
85-
assertNull( auditReader.find( IntNoAutoIdTestEntity.class, 1, 4 ) );
76+
public void testFindEntityId1(EntityManagerFactoryScope scope) {
77+
scope.inEntityManager( em -> {
78+
final var auditReader = AuditReaderFactory.get( em );
79+
assertEquals( new IntNoAutoIdTestEntity( 1, 1 ), auditReader.find( IntNoAutoIdTestEntity.class, 1, 1 ) );
80+
assertEquals( new IntNoAutoIdTestEntity( 11, 1 ), auditReader.find( IntNoAutoIdTestEntity.class, 1, 2 ) );
81+
assertNull( auditReader.find( IntNoAutoIdTestEntity.class, 1, 3 ) );
82+
assertNull( auditReader.find( IntNoAutoIdTestEntity.class, 1, 4 ) );
83+
} );
8684
}
8785

8886
@Test
89-
public void testFindEntityId2() {
90-
final AuditReader auditReader = getAuditReader();
91-
assertNull( auditReader.find( IntNoAutoIdTestEntity.class, 2, 1 ) );
92-
assertNull( auditReader.find( IntNoAutoIdTestEntity.class, 2, 2 ) );
93-
assertEquals( new IntNoAutoIdTestEntity( 2, 2 ), auditReader.find( IntNoAutoIdTestEntity.class, 2, 3 ) );
94-
assertEquals( new IntNoAutoIdTestEntity( 22, 2 ), auditReader.find( IntNoAutoIdTestEntity.class, 2, 4 ) );
87+
public void testFindEntityId2(EntityManagerFactoryScope scope) {
88+
scope.inEntityManager( em -> {
89+
final var auditReader = AuditReaderFactory.get( em );
90+
assertNull( auditReader.find( IntNoAutoIdTestEntity.class, 2, 1 ) );
91+
assertNull( auditReader.find( IntNoAutoIdTestEntity.class, 2, 2 ) );
92+
assertEquals( new IntNoAutoIdTestEntity( 2, 2 ), auditReader.find( IntNoAutoIdTestEntity.class, 2, 3 ) );
93+
assertEquals( new IntNoAutoIdTestEntity( 22, 2 ), auditReader.find( IntNoAutoIdTestEntity.class, 2, 4 ) );
94+
} );
9595
}
9696
}

0 commit comments

Comments
 (0)