Skip to content

Commit

Permalink
[test] Add more tests for PrivilegedCatalog (#3303)
Browse files Browse the repository at this point in the history
  • Loading branch information
tsreaper committed May 7, 2024
1 parent 36eb209 commit 4b86018
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,14 @@ public PrivilegedCatalog(Catalog wrapped, PrivilegeManager privilegeManager) {
this.privilegeManager = privilegeManager;
}

public Catalog wrapped() {
return wrapped;
}

public PrivilegeManager privilegeManager() {
return privilegeManager;
}

@Override
public boolean caseSensitive() {
return wrapped.caseSensitive();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,13 @@

package org.apache.paimon.flink.procedure.privilege;

import org.apache.paimon.catalog.Catalog;
import org.apache.paimon.catalog.FileSystemCatalog;
import org.apache.paimon.flink.FlinkCatalog;
import org.apache.paimon.flink.util.AbstractTestBase;
import org.apache.paimon.privilege.FileBasedPrivilegeManager;
import org.apache.paimon.privilege.NoPrivilegeException;
import org.apache.paimon.privilege.PrivilegedCatalog;

import org.apache.flink.table.api.TableEnvironment;
import org.apache.flink.types.Row;
Expand Down Expand Up @@ -74,6 +79,17 @@ public void testUserPrivileges() throws Exception {
+ " 'warehouse' = '%s'\n"
+ ")",
path));

org.apache.flink.table.catalog.Catalog catalog = tEnv.getCatalog("anonymouscat").get();
assertThat(catalog).isInstanceOf(FlinkCatalog.class);
Catalog paimonCatalog = ((FlinkCatalog) catalog).catalog();
assertThat(paimonCatalog).isInstanceOf(PrivilegedCatalog.class);
PrivilegedCatalog privilegedCatalog = (PrivilegedCatalog) paimonCatalog;
assertThat(privilegedCatalog.wrapped()).isInstanceOf(FileSystemCatalog.class);
assertThat(privilegedCatalog.privilegeManager())
.isInstanceOf(FileBasedPrivilegeManager.class);
assertThat(privilegedCatalog.privilegeManager().privilegeEnabled()).isTrue();

tEnv.executeSql("USE CATALOG anonymouscat");
assertNoPrivilege(
() -> tEnv.executeSql("INSERT INTO mydb.T1 VALUES (1, 11), (2, 21)").await());
Expand Down

0 comments on commit 4b86018

Please sign in to comment.