Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,6 @@
import org.apache.polaris.core.secrets.UnsafeInMemorySecretsManager;
import org.apache.polaris.service.TestServices;
import org.apache.polaris.service.admin.PolarisAdminService;
import org.apache.polaris.service.config.DefaultConfigurationStore;
import org.apache.polaris.service.config.ReservedProperties;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
Expand Down Expand Up @@ -220,7 +219,7 @@ public String getAuthenticationScheme() {
return "";
}
},
new PolarisAuthorizerImpl(new DefaultConfigurationStore(Map.of())),
new PolarisAuthorizerImpl(services.configurationStore()),
new ReservedProperties() {
@Override
public List<String> prefixes() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@
import io.quarkus.test.junit.QuarkusMock;
import io.quarkus.test.junit.QuarkusTestProfile;
import jakarta.annotation.Nonnull;
import jakarta.annotation.Nullable;
import jakarta.enterprise.context.RequestScoped;
import jakarta.enterprise.inject.Alternative;
import jakarta.inject.Inject;
Expand Down Expand Up @@ -56,7 +55,6 @@
import org.apache.polaris.core.auth.AuthenticatedPolarisPrincipal;
import org.apache.polaris.core.auth.PolarisAuthorizer;
import org.apache.polaris.core.auth.PolarisAuthorizerImpl;
import org.apache.polaris.core.config.FeatureConfiguration;
import org.apache.polaris.core.config.PolarisConfigurationStore;
import org.apache.polaris.core.context.CallContext;
import org.apache.polaris.core.context.RealmContext;
Expand Down Expand Up @@ -85,7 +83,6 @@
import org.apache.polaris.service.catalog.iceberg.IcebergCatalog;
import org.apache.polaris.service.catalog.io.FileIOFactory;
import org.apache.polaris.service.catalog.policy.PolicyCatalog;
import org.apache.polaris.service.config.DefaultConfigurationStore;
import org.apache.polaris.service.config.RealmEntityManagerFactory;
import org.apache.polaris.service.config.ReservedProperties;
import org.apache.polaris.service.context.catalog.CallContextCatalogFactory;
Expand Down Expand Up @@ -123,6 +120,10 @@ public Map<String, String> getConfigOverrides() {
"polaris.features.\"SUPPORTED_CATALOG_STORAGE_TYPES\"",
"[\"FILE\",\"S3\"]",
"polaris.readiness.ignore-severe-issues",
"true",
"polaris.features.\"ENABLE_GENERIC_TABLES\"",
"true",
"polaris.features.\"ENFORCE_PRINCIPAL_CREDENTIAL_ROTATION_REQUIRED_CHECKING\"",
"true");
}
}
Expand Down Expand Up @@ -183,12 +184,6 @@ public Map<String, String> getConfigOverrides() {
new Schema(
required(3, "id", Types.IntegerType.get(), "unique ID 🤪"),
required(4, "data", Types.StringType.get()));
protected final PolarisAuthorizer polarisAuthorizer =
new PolarisAuthorizerImpl(
new DefaultConfigurationStore(
Map.of(
FeatureConfiguration.ENFORCE_PRINCIPAL_CREDENTIAL_ROTATION_REQUIRED_CHECKING.key,
true)));
protected final ReservedProperties reservedProperties = ReservedProperties.NONE;

@Inject protected MetaStoreManagerFactory managerFactory;
Expand All @@ -200,6 +195,7 @@ public Map<String, String> getConfigOverrides() {
@Inject protected FileIOFactory fileIOFactory;
@Inject protected PolarisEventListener polarisEventListener;
@Inject protected CatalogHandlerUtils catalogHandlerUtils;
@Inject protected PolarisConfigurationStore configurationStore;

protected IcebergCatalog baseCatalog;
protected PolarisGenericTableCatalog genericTableCatalog;
Expand All @@ -213,6 +209,7 @@ public Map<String, String> getConfigOverrides() {
protected PrincipalEntity principalEntity;
protected CallContext callContext;
protected AuthenticatedPolarisPrincipal authenticatedRoot;
protected PolarisAuthorizer polarisAuthorizer;

private PolarisCallContext polarisContext;

Expand All @@ -227,33 +224,17 @@ public static void setUpMocks() {
@BeforeEach
public void before(TestInfo testInfo) {
RealmContext realmContext = testInfo::getDisplayName;
QuarkusMock.installMockForType(realmContext, RealmContext.class);
metaStoreManager = managerFactory.getOrCreateMetaStoreManager(realmContext);
userSecretsManager = userSecretsManagerFactory.getOrCreateUserSecretsManager(realmContext);

Map<String, Object> configMap =
Map.of(
"ALLOW_SPECIFYING_FILE_IO_IMPL",
true,
"ALLOW_INSECURE_STORAGE_TYPES",
true,
"ALLOW_EXTERNAL_METADATA_FILE_LOCATION",
true,
"SUPPORTED_CATALOG_STORAGE_TYPES",
List.of("FILE", "S3"),
"ENABLE_GENERIC_TABLES",
true);
polarisAuthorizer = new PolarisAuthorizerImpl(configurationStore);

polarisContext =
new PolarisCallContext(
managerFactory.getOrCreateSessionSupplier(realmContext).get(),
diagServices,
new PolarisConfigurationStore() {
@Override
public <T> @Nullable T getConfiguration(PolarisCallContext ctx, String configName) {
@SuppressWarnings("unchecked")
var r = (T) configMap.get(configName);
return r;
}
},
configurationStore,
clock);
this.entityManager = realmEntityManagerFactory.getOrCreateEntityManager(realmContext);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,12 +24,14 @@
import com.auth0.jwt.JWTVerifier;
import com.auth0.jwt.algorithms.Algorithm;
import com.auth0.jwt.interfaces.DecodedJWT;
import io.quarkus.test.junit.QuarkusTest;
import jakarta.inject.Inject;
import java.nio.file.Files;
import java.nio.file.Path;
import java.security.interfaces.RSAPrivateKey;
import java.security.interfaces.RSAPublicKey;
import java.util.HashMap;
import org.apache.polaris.core.PolarisCallContext;
import org.apache.polaris.core.config.PolarisConfigurationStore;
import org.apache.polaris.core.entity.PolarisBaseEntity;
import org.apache.polaris.core.entity.PolarisEntitySubType;
import org.apache.polaris.core.entity.PolarisEntityType;
Expand All @@ -43,13 +45,15 @@
import org.apache.polaris.service.auth.TokenBroker;
import org.apache.polaris.service.auth.TokenRequestValidator;
import org.apache.polaris.service.auth.TokenResponse;
import org.apache.polaris.service.config.DefaultConfigurationStore;
import org.apache.polaris.service.types.TokenType;
import org.junit.jupiter.api.Test;
import org.mockito.Mockito;

@QuarkusTest
public class JWTRSAKeyPairTest {

@Inject protected PolarisConfigurationStore configurationStore;

@Test
public void testSuccessfulTokenGeneration() throws Exception {
Path privateFileLocation = Files.createTempFile("test-private", ".pem");
Expand All @@ -59,8 +63,8 @@ public void testSuccessfulTokenGeneration() throws Exception {
final String clientId = "test-client-id";
final String scope = "PRINCIPAL_ROLE:TEST";

DefaultConfigurationStore store = new DefaultConfigurationStore(new HashMap<>());
PolarisCallContext polarisCallContext = new PolarisCallContext(null, null, store, null);
PolarisCallContext polarisCallContext =
new PolarisCallContext(null, null, configurationStore, null);
PolarisMetaStoreManager metastoreManager = Mockito.mock(PolarisMetaStoreManager.class);
String mainSecret = "client-secret";
PolarisPrincipalSecrets principalSecrets =
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@
import static jakarta.ws.rs.core.Response.Status.CREATED;
import static org.assertj.core.api.Assertions.assertThat;

import io.quarkus.test.junit.QuarkusTest;
import jakarta.ws.rs.core.Response;
import java.util.List;
import java.util.Map;
Expand All @@ -33,7 +32,6 @@
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.ValueSource;

@QuarkusTest
public class GetConfigTest {
@ParameterizedTest
@ValueSource(booleans = {true, false})
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -246,6 +246,7 @@ public void before(TestInfo testInfo) {
.formatted(
testInfo.getTestMethod().map(Method::getName).orElse("test"), System.nanoTime());
RealmContext realmContext = () -> realmName;
QuarkusMock.installMockForType(realmContext, RealmContext.class);
metaStoreManager = managerFactory.getOrCreateMetaStoreManager(realmContext);
userSecretsManager = userSecretsManagerFactory.getOrCreateUserSecretsManager(realmContext);
polarisContext =
Expand All @@ -254,6 +255,7 @@ public void before(TestInfo testInfo) {
diagServices,
configurationStore,
Clock.systemDefaultZone());

entityManager =
new PolarisEntityManager(
metaStoreManager, new StorageCredentialCache(), createEntityCache(metaStoreManager));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -166,6 +166,7 @@ public void before(TestInfo testInfo) {
.formatted(
testInfo.getTestMethod().map(Method::getName).orElse("test"), System.nanoTime());
RealmContext realmContext = () -> realmName;
QuarkusMock.installMockForType(realmContext, RealmContext.class);

metaStoreManager = managerFactory.getOrCreateMetaStoreManager(realmContext);
userSecretsManager = userSecretsManagerFactory.getOrCreateUserSecretsManager(realmContext);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
package org.apache.polaris.service.quarkus.catalog;

import io.quarkus.test.junit.QuarkusTest;
import io.quarkus.test.junit.TestProfile;
import java.util.List;
import java.util.Map;
import java.util.Set;
Expand All @@ -31,6 +32,7 @@
import org.junit.jupiter.api.Test;

@QuarkusTest
@TestProfile(PolarisAuthzTestBase.Profile.class)
public class PolarisGenericTableCatalogHandlerAuthzTest extends PolarisAuthzTestBase {

private GenericTableCatalogHandler newWrapper() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -168,6 +168,7 @@ public void before(TestInfo testInfo) {
.formatted(
testInfo.getTestMethod().map(Method::getName).orElse("test"), System.nanoTime());
RealmContext realmContext = () -> realmName;
QuarkusMock.installMockForType(realmContext, RealmContext.class);
metaStoreManager = managerFactory.getOrCreateMetaStoreManager(realmContext);
userSecretsManager = userSecretsManagerFactory.getOrCreateUserSecretsManager(realmContext);
polarisContext =
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
package org.apache.polaris.service.quarkus.catalog;

import io.quarkus.test.junit.QuarkusTest;
import io.quarkus.test.junit.TestProfile;
import java.util.Arrays;
import java.util.List;
import java.util.Set;
Expand All @@ -38,6 +39,7 @@
import org.junit.jupiter.api.Test;

@QuarkusTest
@TestProfile(PolarisAuthzTestBase.Profile.class)
public class PolicyCatalogHandlerAuthzTest extends PolarisAuthzTestBase {
private PolicyCatalogHandler newWrapper() {
return newWrapper(Set.of());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -192,6 +192,7 @@ public void before(TestInfo testInfo) {
.formatted(
testInfo.getTestMethod().map(Method::getName).orElse("test"), System.nanoTime());
RealmContext realmContext = () -> realmName;
QuarkusMock.installMockForType(realmContext, RealmContext.class);
metaStoreManager = managerFactory.getOrCreateMetaStoreManager(realmContext);
userSecretsManager = userSecretsManagerFactory.getOrCreateUserSecretsManager(realmContext);
polarisContext =
Expand Down
Loading
Loading