From 4dc3f1823b23d652c22984fe6295bdff82de5e64 Mon Sep 17 00:00:00 2001 From: Christopher Lambert <1204398+XN137@users.noreply.github.com> Date: Tue, 15 Jul 2025 10:47:54 +0200 Subject: [PATCH] Simplify RealmEntityManagerFactory usage in tests since all ctor params are created in `IcebergCatalogTest.before` we can do the same for `RealmEntityManagerFactory` `PolarisAuthzTestBase.entityManager` is already getting derived from `realmEntityManagerFactory`: https://github.com/apache/polaris/blob/2c2052c28f899aaa85e5f11a9131d9812ec62679/runtime/service/src/test/java/org/apache/polaris/service/quarkus/admin/PolarisAuthzTestBase.java#L247 --- .../IcebergCatalogHandlerAuthzTest.java | 10 +--------- .../quarkus/catalog/IcebergCatalogTest.java | 19 +++++-------------- .../catalog/IcebergCatalogViewTest.java | 8 ++++---- 3 files changed, 10 insertions(+), 27 deletions(-) diff --git a/runtime/service/src/test/java/org/apache/polaris/service/quarkus/catalog/IcebergCatalogHandlerAuthzTest.java b/runtime/service/src/test/java/org/apache/polaris/service/quarkus/catalog/IcebergCatalogHandlerAuthzTest.java index 9a668f2c3f..ccfe67da63 100644 --- a/runtime/service/src/test/java/org/apache/polaris/service/quarkus/catalog/IcebergCatalogHandlerAuthzTest.java +++ b/runtime/service/src/test/java/org/apache/polaris/service/quarkus/catalog/IcebergCatalogHandlerAuthzTest.java @@ -56,17 +56,14 @@ import org.apache.polaris.core.admin.model.StorageConfigInfo; import org.apache.polaris.core.auth.AuthenticatedPolarisPrincipal; import org.apache.polaris.core.context.CallContext; -import org.apache.polaris.core.context.RealmContext; import org.apache.polaris.core.entity.CatalogEntity; import org.apache.polaris.core.entity.CatalogRoleEntity; import org.apache.polaris.core.entity.PolarisPrivilege; import org.apache.polaris.core.entity.PrincipalEntity; -import org.apache.polaris.core.persistence.PolarisEntityManager; import org.apache.polaris.core.persistence.dao.entity.CreatePrincipalResult; import org.apache.polaris.core.persistence.resolver.PolarisResolutionManifest; import org.apache.polaris.service.catalog.iceberg.IcebergCatalogHandler; import org.apache.polaris.service.catalog.io.DefaultFileIOFactory; -import org.apache.polaris.service.config.RealmEntityManagerFactory; import org.apache.polaris.service.context.catalog.CallContextCatalogFactory; import org.apache.polaris.service.context.catalog.PolarisCallContextCatalogFactory; import org.apache.polaris.service.http.IfNoneMatch; @@ -1791,12 +1788,7 @@ public void testSendNotificationSufficientPrivileges() { PolarisCallContextCatalogFactory factory = new PolarisCallContextCatalogFactory( - new RealmEntityManagerFactory(null, null, null) { - @Override - public PolarisEntityManager getOrCreateEntityManager(RealmContext realmContext) { - return entityManager; - } - }, + realmEntityManagerFactory, managerFactory, userSecretsManagerFactory, Mockito.mock(), diff --git a/runtime/service/src/test/java/org/apache/polaris/service/quarkus/catalog/IcebergCatalogTest.java b/runtime/service/src/test/java/org/apache/polaris/service/quarkus/catalog/IcebergCatalogTest.java index 0bd413cba3..30f5939ed6 100644 --- a/runtime/service/src/test/java/org/apache/polaris/service/quarkus/catalog/IcebergCatalogTest.java +++ b/runtime/service/src/test/java/org/apache/polaris/service/quarkus/catalog/IcebergCatalogTest.java @@ -251,6 +251,7 @@ public Map getConfigOverrides() { private PolarisCallContext polarisContext; private PolarisAdminService adminService; private StorageCredentialCache storageCredentialCache; + private RealmEntityManagerFactory realmEntityManagerFactory; private PolarisEntityManager entityManager; private FileIOFactory fileIOFactory; private InMemoryFileIO fileIO; @@ -356,7 +357,7 @@ public void before(TestInfo testInfo) { .build() .asCatalog())); - RealmEntityManagerFactory realmEntityManagerFactory = + realmEntityManagerFactory = new RealmEntityManagerFactory( metaStoreManagerFactory, configurationStore, storageCredentialCache); this.fileIOFactory = @@ -990,11 +991,7 @@ public void testValidateNotificationFailToCreateFileIO() { new PolarisPassthroughResolutionView( polarisContext, entityManager, securityContext, catalog().name()); FileIOFactory fileIOFactory = - spy( - new DefaultFileIOFactory( - new RealmEntityManagerFactory( - metaStoreManagerFactory, configurationStore, storageCredentialCache), - metaStoreManagerFactory)); + spy(new DefaultFileIOFactory(realmEntityManagerFactory, metaStoreManagerFactory)); IcebergCatalog catalog = new IcebergCatalog( entityManager, @@ -1883,10 +1880,7 @@ public void testDropTableWithPurge() { .containsEntry(StorageAccessProperty.AWS_TOKEN, SESSION_TOKEN); FileIO fileIO = new TaskFileIOSupplier( - new DefaultFileIOFactory( - new RealmEntityManagerFactory( - metaStoreManagerFactory, configurationStore, storageCredentialCache), - metaStoreManagerFactory)) + new DefaultFileIOFactory(realmEntityManagerFactory, metaStoreManagerFactory)) .apply(taskEntity, polarisContext); Assertions.assertThat(fileIO).isNotNull().isInstanceOf(ExceptionMappingFileIO.class); Assertions.assertThat(((ExceptionMappingFileIO) fileIO).getInnerIo()) @@ -2028,10 +2022,7 @@ public void testFileIOWrapper() { polarisContext, entityManager, securityContext, CATALOG_NAME); MeasuredFileIOFactory measured = - new MeasuredFileIOFactory( - new RealmEntityManagerFactory( - metaStoreManagerFactory, configurationStore, storageCredentialCache), - metaStoreManagerFactory); + new MeasuredFileIOFactory(realmEntityManagerFactory, metaStoreManagerFactory); IcebergCatalog catalog = new IcebergCatalog( entityManager, diff --git a/runtime/service/src/test/java/org/apache/polaris/service/quarkus/catalog/IcebergCatalogViewTest.java b/runtime/service/src/test/java/org/apache/polaris/service/quarkus/catalog/IcebergCatalogViewTest.java index 9f587fae93..ebb9075837 100644 --- a/runtime/service/src/test/java/org/apache/polaris/service/quarkus/catalog/IcebergCatalogViewTest.java +++ b/runtime/service/src/test/java/org/apache/polaris/service/quarkus/catalog/IcebergCatalogViewTest.java @@ -238,11 +238,11 @@ public void before(TestInfo testInfo) { PolarisPassthroughResolutionView passthroughView = new PolarisPassthroughResolutionView( polarisContext, entityManager, securityContext, CATALOG_NAME); + RealmEntityManagerFactory realmEntityManagerFactory = + new RealmEntityManagerFactory( + metaStoreManagerFactory, configurationStore, storageCredentialCache); FileIOFactory fileIOFactory = - new DefaultFileIOFactory( - new RealmEntityManagerFactory( - metaStoreManagerFactory, configurationStore, storageCredentialCache), - metaStoreManagerFactory); + new DefaultFileIOFactory(realmEntityManagerFactory, metaStoreManagerFactory); testPolarisEventListener = (TestPolarisEventListener) polarisEventListener; this.catalog =