Skip to content

Commit 69a5ea2

Browse files
committed
HHH-18974 - Add test for new method StaticClassLists.typesNeedingRuntimeInitialization()
Signed-off-by: Jan Schatteman <[email protected]>
1 parent 305a86a commit 69a5ea2

File tree

1 file changed

+33
-0
lines changed

1 file changed

+33
-0
lines changed

hibernate-graalvm/src/test/java/org/hibernate/graalvm/internal/StaticClassListsTest.java

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@
1616

1717
import org.hibernate.Session;
1818
import org.hibernate.event.spi.EventType;
19+
import org.hibernate.id.uuid.UuidVersion6Strategy;
20+
import org.hibernate.id.uuid.UuidVersion7Strategy;
1921
import org.hibernate.internal.util.ReflectHelper;
2022
import org.hibernate.persister.collection.CollectionPersister;
2123
import org.hibernate.persister.entity.EntityPersister;
@@ -37,6 +39,37 @@ public static void index() throws IOException {
3739
hibernateIndex = JandexTestUtils.indexJar( Session.class );
3840
}
3941

42+
@Nested
43+
class TypesNeedingRuntimeInitialization {
44+
@ParameterizedTest
45+
@EnumSource(TypesNeedingRuntimeInitialization_Category.class)
46+
void containsAllExpectedClasses(TypesNeedingRuntimeInitialization_Category category) {
47+
assertThat( StaticClassLists.typesNeedingRuntimeInitialization() )
48+
.containsAll( category.classes().collect( Collectors.toSet() ) );
49+
}
50+
51+
@Test
52+
void meta_noMissingTestCategory() {
53+
assertThat( Arrays.stream( TypesNeedingRuntimeInitialization_Category.values() ).flatMap( TypesNeedingRuntimeInitialization_Category::classes ) )
54+
.as( "If this fails, a category is missing in " + TypesNeedingRuntimeInitialization_Category.class )
55+
.contains( StaticClassLists.typesNeedingRuntimeInitialization() );
56+
}
57+
}
58+
59+
enum TypesNeedingRuntimeInitialization_Category {
60+
MISC {
61+
@Override
62+
Stream<Class<?>> classes() {
63+
return Stream.of(
64+
UuidVersion6Strategy.Holder.class,
65+
UuidVersion7Strategy.Holder.class
66+
);
67+
}
68+
};
69+
70+
abstract Stream<Class<?>> classes();
71+
}
72+
4073
@Nested
4174
class TypesNeedingAllConstructorsAccessible {
4275
@ParameterizedTest

0 commit comments

Comments
 (0)