Skip to content

Commit 6907124

Browse files
committed
HHH-19871 --wip-- Envers migration to JUnit 6
- `org.hibernate.orm.test.envers.integration.collection`
1 parent f0d55fe commit 6907124

36 files changed

+2419
-2400
lines changed

hibernate-envers/src/test/java/org/hibernate/orm/test/envers/integration/collection/CollectionNullValueTest.java

Lines changed: 52 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -7,38 +7,35 @@
77
import java.util.Arrays;
88
import java.util.List;
99

10-
import org.hibernate.orm.test.envers.BaseEnversJPAFunctionalTestCase;
11-
import org.hibernate.orm.test.envers.Priority;
10+
import org.hibernate.envers.AuditReaderFactory;
1211
import org.hibernate.orm.test.envers.entities.collection.StringListEntity;
1312
import org.hibernate.orm.test.envers.entities.collection.StringMapEntity;
1413
import org.hibernate.orm.test.envers.entities.collection.StringSetEntity;
1514
import org.hibernate.orm.test.envers.tools.TestTools;
16-
import org.junit.Test;
17-
15+
import org.hibernate.testing.envers.junit.EnversTest;
16+
import org.hibernate.testing.orm.junit.BeforeClassTemplate;
17+
import org.hibernate.testing.orm.junit.EntityManagerFactoryScope;
1818
import org.hibernate.testing.orm.junit.JiraKey;
19+
import org.hibernate.testing.orm.junit.Jpa;
20+
import org.junit.jupiter.api.Test;
1921

20-
import static org.hibernate.testing.transaction.TransactionUtil.doInJPA;
21-
import static org.junit.Assert.assertEquals;
22+
import static org.junit.jupiter.api.Assertions.assertEquals;
2223

2324
/**
2425
* @author Chris Cranford
2526
*/
2627
@JiraKey(value = "HHH-11901")
27-
public class CollectionNullValueTest extends BaseEnversJPAFunctionalTestCase {
28+
@EnversTest
29+
@Jpa(annotatedClasses = { StringMapEntity.class, StringListEntity.class, StringSetEntity.class })
30+
public class CollectionNullValueTest {
2831
private Integer mapId;
2932
private Integer listId;
3033
private Integer setId;
3134

32-
@Override
33-
protected Class<?>[] getAnnotatedClasses() {
34-
return new Class<?>[] { StringMapEntity.class, StringListEntity.class, StringSetEntity.class };
35-
}
36-
37-
@Test
38-
@Priority(10)
39-
public void initData() {
35+
@BeforeClassTemplate
36+
public void initData(EntityManagerFactoryScope scope) {
4037
// Persist map with null values
41-
mapId = doInJPA( this::entityManagerFactory, entityManager -> {
38+
mapId = scope.fromTransaction( entityManager -> {
4239
final StringMapEntity sme = new StringMapEntity();
4340
sme.getStrings().put( "A", "B" );
4441
sme.getStrings().put( "B", null );
@@ -48,7 +45,7 @@ public void initData() {
4845
} );
4946

5047
// Update map with null values
51-
doInJPA( this::entityManagerFactory, entityManager -> {
48+
scope.inTransaction( entityManager -> {
5249
final StringMapEntity sme = entityManager.find( StringMapEntity.class, mapId );
5350
sme.getStrings().put( "C", null );
5451
sme.getStrings().put( "D", "E" );
@@ -57,7 +54,7 @@ public void initData() {
5754
} );
5855

5956
// Persist list with null values
60-
listId = doInJPA( this::entityManagerFactory, entityManager -> {
57+
listId = scope.fromTransaction( entityManager -> {
6158
final StringListEntity sle = new StringListEntity();
6259
sle.getStrings().add( "A" );
6360
sle.getStrings().add( null );
@@ -67,7 +64,7 @@ public void initData() {
6764
} );
6865

6966
// Update list with null values
70-
doInJPA( this::entityManagerFactory, entityManager -> {
67+
scope.inTransaction( entityManager -> {
7168
final StringListEntity sle = entityManager.find( StringListEntity.class, listId );
7269
sle.getStrings().add( null );
7370
sle.getStrings().add( "D" );
@@ -76,7 +73,7 @@ public void initData() {
7673
} );
7774

7875
// Persist set with null values
79-
setId = doInJPA( this::entityManagerFactory, entityManager -> {
76+
setId = scope.fromTransaction( entityManager -> {
8077
final StringSetEntity sse = new StringSetEntity();
8178
sse.getStrings().add( "A" );
8279
sse.getStrings().add( null );
@@ -86,7 +83,7 @@ public void initData() {
8683
} );
8784

8885
// Update set with null values
89-
doInJPA( this::entityManagerFactory, entityManager -> {
86+
scope.inTransaction( entityManager -> {
9087
final StringSetEntity sse = entityManager.find( StringSetEntity.class, setId );
9188
sse.getStrings().add( null );
9289
sse.getStrings().add( "D" );
@@ -96,41 +93,49 @@ public void initData() {
9693
}
9794

9895
@Test
99-
public void testStringMapHistory() {
100-
final List<Number> revisions = getAuditReader().getRevisions( StringMapEntity.class, mapId );
101-
assertEquals( Arrays.asList( 1, 2 ), revisions );
96+
public void testStringMapHistory(EntityManagerFactoryScope scope) {
97+
scope.inEntityManager( entityManager -> {
98+
final var auditReader = AuditReaderFactory.get( entityManager );
99+
final List<Number> revisions = auditReader.getRevisions( StringMapEntity.class, mapId );
100+
assertEquals( Arrays.asList( 1, 2 ), revisions );
102101

103-
final StringMapEntity rev1 = getAuditReader().find( StringMapEntity.class, mapId, 1 );
104-
assertEquals( TestTools.makeMap( "A", "B" ), rev1.getStrings() );
102+
final StringMapEntity rev1 = auditReader.find( StringMapEntity.class, mapId, 1 );
103+
assertEquals( TestTools.makeMap( "A", "B" ), rev1.getStrings() );
105104

106-
final StringMapEntity rev2 = getAuditReader().find( StringMapEntity.class, mapId, 2 );
107-
assertEquals( TestTools.makeMap( "D", "E" ), rev2.getStrings() );
105+
final StringMapEntity rev2 = auditReader.find( StringMapEntity.class, mapId, 2 );
106+
assertEquals( TestTools.makeMap( "D", "E" ), rev2.getStrings() );
107+
} );
108108
}
109109

110110
@Test
111-
public void testStringListHistory() {
112-
final List<Number> revisions = getAuditReader().getRevisions( StringListEntity.class, listId );
113-
assertEquals( Arrays.asList( 3, 4 ), revisions );
114-
115-
final StringListEntity rev3 = getAuditReader().find( StringListEntity.class, listId, 3 );
116-
assertEquals( TestTools.makeList( "A" ), rev3.getStrings() );
117-
118-
// NOTE: the only reason this assertion expects a null element is because the collection is indexed.
119-
// ORM will return a list that consists of { null, "D" } and Envers should effectively mimic that.
120-
final StringListEntity rev4 = getAuditReader().find( StringListEntity.class, listId, 4 );
121-
assertEquals( TestTools.makeList( null, "D" ), rev4.getStrings() );
111+
public void testStringListHistory(EntityManagerFactoryScope scope) {
112+
scope.inEntityManager( entityManager -> {
113+
final var auditReader = AuditReaderFactory.get( entityManager );
114+
final List<Number> revisions = auditReader.getRevisions( StringListEntity.class, listId );
115+
assertEquals( Arrays.asList( 3, 4 ), revisions );
116+
117+
final StringListEntity rev3 = auditReader.find( StringListEntity.class, listId, 3 );
118+
assertEquals( TestTools.makeList( "A" ), rev3.getStrings() );
119+
120+
// NOTE: the only reason this assertion expects a null element is because the collection is indexed.
121+
// ORM will return a list that consists of { null, "D" } and Envers should effectively mimic that.
122+
final StringListEntity rev4 = auditReader.find( StringListEntity.class, listId, 4 );
123+
assertEquals( TestTools.makeList( null, "D" ), rev4.getStrings() );
124+
} );
122125
}
123126

124127
@Test
125-
public void testStringSetHistory() {
126-
final List<Number> revisions = getAuditReader().getRevisions( StringSetEntity.class, setId );
127-
assertEquals( Arrays.asList( 5, 6 ), revisions );
128+
public void testStringSetHistory(EntityManagerFactoryScope scope) {
129+
scope.inEntityManager( entityManager -> {
130+
final var auditReader = AuditReaderFactory.get( entityManager );
131+
final List<Number> revisions = auditReader.getRevisions( StringSetEntity.class, setId );
132+
assertEquals( Arrays.asList( 5, 6 ), revisions );
128133

129-
final StringSetEntity rev5 = getAuditReader().find( StringSetEntity.class, setId, 5 );
130-
assertEquals( TestTools.makeSet( "A" ), rev5.getStrings() );
134+
final StringSetEntity rev5 = auditReader.find( StringSetEntity.class, setId, 5 );
135+
assertEquals( TestTools.makeSet( "A" ), rev5.getStrings() );
131136

132-
final StringSetEntity rev6 = getAuditReader().find( StringSetEntity.class, setId, 6 );
133-
assertEquals( TestTools.makeSet( "D" ), rev6.getStrings() );
137+
final StringSetEntity rev6 = auditReader.find( StringSetEntity.class, setId, 6 );
138+
assertEquals( TestTools.makeSet( "D" ), rev6.getStrings() );
139+
} );
134140
}
135-
136141
}

0 commit comments

Comments
 (0)