mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-14 03:25:15 +00:00
63 lines
2.7 KiB
Python
Executable File
63 lines
2.7 KiB
Python
Executable File
#!/usr/bin/env python3
|
|
import sys
|
|
from testflows.core import *
|
|
|
|
append_path(sys.path, "..")
|
|
|
|
from helpers.cluster import Cluster
|
|
from helpers.argparser import argparser
|
|
from rbac.requirements import *
|
|
|
|
issue_12507 = "https://github.com/ClickHouse/ClickHouse/issues/12507"
|
|
issue_12510 = "https://github.com/ClickHouse/ClickHouse/issues/12510"
|
|
issue_12600 = "https://github.com/ClickHouse/ClickHouse/issues/12600"
|
|
|
|
xfails = {
|
|
"syntax/show create quota/I show create quota current":
|
|
[(Fail, "https://github.com/ClickHouse/ClickHouse/issues/12495")],
|
|
"syntax/create role/I create role that already exists, throws exception":
|
|
[(Fail, issue_12510)],
|
|
"syntax/create user/I create user with if not exists, user does exist":
|
|
[(Fail, issue_12507)],
|
|
"syntax/create row policy/I create row policy if not exists, policy does exist":
|
|
[(Fail, issue_12507)],
|
|
"syntax/create quota/I create quota if not exists, quota does exist":
|
|
[(Fail, issue_12507)],
|
|
"syntax/create role/I create role if not exists, role does exist":
|
|
[(Fail, issue_12507)],
|
|
"syntax/create settings profile/I create settings profile if not exists, profile does exist":
|
|
[(Fail, issue_12507)],
|
|
"syntax/grant privilege/grant privileges/privilege='dictGet', on=('db0.table0', 'db0.*', '*.*', 'tb0', '*'), allow_introspection=False":
|
|
[(Fail, issue_12600)],
|
|
"syntax/grant privilege/grant privileges/privilege='CREATE', on=('db0.table0', 'db0.*', '*.*', 'tb0', '*'), allow_introspection=False":
|
|
[(Fail, issue_12600)],
|
|
"syntax/grant privilege/grant privileges/privilege='DROP', on=('db0.table0', 'db0.*', '*.*', 'tb0', '*'), allow_introspection=False":
|
|
[(Fail, issue_12600)],
|
|
"syntax/grant privilege/grant privileges/privilege='TRUNCATE', on=('db0.table0', 'db0.*', '*.*', 'tb0', '*'), allow_introspection=False":
|
|
[(Fail, issue_12600)],
|
|
"syntax/grant privilege/grant privileges/privilege='OPTIMIZE', on=('db0.table0', 'db0.*', '*.*', 'tb0', '*'), allow_introspection=False":
|
|
[(Fail, issue_12600)],
|
|
"syntax/grant privilege/grant privileges/privilege='SYSTEM', on=('db0.table0', 'db0.*', '*.*', 'tb0', '*'), allow_introspection=False":
|
|
[(Fail, issue_12600)],
|
|
}
|
|
|
|
@TestModule
|
|
@ArgumentParser(argparser)
|
|
@XFails(xfails)
|
|
@Name("rbac")
|
|
def regression(self, local, clickhouse_binary_path):
|
|
"""RBAC regression.
|
|
"""
|
|
nodes = {
|
|
"clickhouse":
|
|
("clickhouse1", "clickhouse2", "clickhouse3")
|
|
}
|
|
with Cluster(local, clickhouse_binary_path, nodes=nodes) as cluster:
|
|
self.context.cluster = cluster
|
|
|
|
Feature(run=load("rbac.tests.syntax.feature", "feature"), flags=TE)
|
|
Feature(run=load("rbac.tests.privileges.feature", "feature"), flags=TE)
|
|
|
|
if main():
|
|
regression()
|