in polaris-core/src/testFixtures/java/org/apache/polaris/core/persistence/PolarisTestMetaStoreManager.java [1924:2032]
public void testCreateTestCatalog() {
// create test catalog
this.createTestCatalog("test");
// validate that it has been properly created
PolarisBaseEntity catalog = this.ensureExistsByName(null, PolarisEntityType.CATALOG, "test");
PolarisBaseEntity N1 =
this.ensureExistsByName(List.of(catalog), PolarisEntityType.NAMESPACE, "N1");
PolarisBaseEntity N1_N2 =
this.ensureExistsByName(List.of(catalog, N1), PolarisEntityType.NAMESPACE, "N2");
this.ensureExistsByName(
List.of(catalog, N1, N1_N2),
PolarisEntityType.TABLE_LIKE,
PolarisEntitySubType.ICEBERG_TABLE,
"T1");
this.ensureExistsByName(
List.of(catalog, N1, N1_N2),
PolarisEntityType.TABLE_LIKE,
PolarisEntitySubType.ICEBERG_TABLE,
"T2");
this.ensureExistsByName(
List.of(catalog, N1, N1_N2),
PolarisEntityType.TABLE_LIKE,
PolarisEntitySubType.ANY_SUBTYPE,
"T2");
this.ensureExistsByName(
List.of(catalog, N1, N1_N2),
PolarisEntityType.TABLE_LIKE,
PolarisEntitySubType.ICEBERG_VIEW,
"V1");
this.ensureExistsByName(
List.of(catalog, N1, N1_N2),
PolarisEntityType.TABLE_LIKE,
PolarisEntitySubType.ANY_SUBTYPE,
"V1");
PolarisBaseEntity N1_N3 =
this.ensureExistsByName(List.of(catalog, N1), PolarisEntityType.NAMESPACE, "N3");
this.ensureExistsByName(
List.of(catalog, N1, N1_N3),
PolarisEntityType.TABLE_LIKE,
PolarisEntitySubType.ICEBERG_TABLE,
"T3");
this.ensureExistsByName(
List.of(catalog, N1, N1_N3),
PolarisEntityType.TABLE_LIKE,
PolarisEntitySubType.ANY_SUBTYPE,
"V2");
this.ensureExistsByName(
List.of(catalog, N1),
PolarisEntityType.TABLE_LIKE,
PolarisEntitySubType.ICEBERG_TABLE,
"T4");
this.ensureExistsByName(List.of(catalog, N1), PolarisEntityType.NAMESPACE, "N4");
PolarisBaseEntity N5 =
this.ensureExistsByName(List.of(catalog), PolarisEntityType.NAMESPACE, "N5");
PolarisBaseEntity N5_N6 =
this.ensureExistsByName(
List.of(catalog, N5),
PolarisEntityType.NAMESPACE,
PolarisEntitySubType.ANY_SUBTYPE,
"N6");
this.ensureExistsByName(
List.of(catalog, N5, N5_N6),
PolarisEntityType.TABLE_LIKE,
PolarisEntitySubType.ICEBERG_TABLE,
"T5");
PolarisBaseEntity N5_N6_T5 =
this.ensureExistsByName(
List.of(catalog, N5, N5_N6),
PolarisEntityType.TABLE_LIKE,
PolarisEntitySubType.ANY_SUBTYPE,
"T5");
this.ensureExistsByName(
List.of(catalog, N5, N5_N6),
PolarisEntityType.TABLE_LIKE,
PolarisEntitySubType.ICEBERG_TABLE,
"T6");
PolarisBaseEntity N7 =
this.ensureExistsByName(List.of(catalog), PolarisEntityType.NAMESPACE, "N7");
PolarisBaseEntity N7_N8 =
this.ensureExistsByName(
List.of(catalog, N7),
PolarisEntityType.NAMESPACE,
PolarisEntitySubType.ANY_SUBTYPE,
"N8");
this.ensureExistsByName(List.of(catalog, N7, N7_N8), PolarisEntityType.POLICY, "POL1");
this.ensureExistsByName(List.of(catalog, N7, N7_N8), PolarisEntityType.POLICY, "POL2");
this.ensureExistsByName(List.of(catalog, N7), PolarisEntityType.POLICY, "POL3");
PolarisBaseEntity R1 =
this.ensureExistsByName(List.of(catalog), PolarisEntityType.CATALOG_ROLE, "R1");
PolarisBaseEntity R2 =
this.ensureExistsByName(List.of(catalog), PolarisEntityType.CATALOG_ROLE, "R2");
this.ensureGrantRecordExists(N1_N2, R1, PolarisPrivilege.TABLE_READ_DATA);
this.ensureGrantRecordExists(catalog, R1, PolarisPrivilege.VIEW_CREATE);
this.ensureGrantRecordExists(N5, R1, PolarisPrivilege.TABLE_LIST);
this.ensureGrantRecordExists(N5_N6_T5, R1, PolarisPrivilege.TABLE_DROP);
this.ensureGrantRecordExists(N5, R2, PolarisPrivilege.TABLE_WRITE_DATA);
this.ensureGrantRecordExists(catalog, R2, PolarisPrivilege.VIEW_LIST);
PolarisBaseEntity PR1 = this.ensureExistsByName(null, PolarisEntityType.PRINCIPAL_ROLE, "PR1");
PolarisBaseEntity PR2 = this.ensureExistsByName(null, PolarisEntityType.PRINCIPAL_ROLE, "PR2");
this.ensureGrantRecordExists(R1, PR1, PolarisPrivilege.CATALOG_ROLE_USAGE);
this.ensureGrantRecordExists(R2, PR1, PolarisPrivilege.CATALOG_ROLE_USAGE);
this.ensureGrantRecordExists(R2, PR2, PolarisPrivilege.CATALOG_ROLE_USAGE);
PolarisBaseEntity P1 = this.ensureExistsByName(null, PolarisEntityType.PRINCIPAL, "P1");
PolarisBaseEntity P2 = this.ensureExistsByName(null, PolarisEntityType.PRINCIPAL, "P2");
this.ensureGrantRecordExists(PR1, P1, PolarisPrivilege.PRINCIPAL_ROLE_USAGE);
this.ensureGrantRecordExists(PR2, P1, PolarisPrivilege.PRINCIPAL_ROLE_USAGE);
this.ensureGrantRecordExists(PR2, P2, PolarisPrivilege.PRINCIPAL_ROLE_USAGE);
}