Skip to content

Commit 27e290e

Browse files
authored
Move integration test to correct place (#3253)
Fixed #3247
1 parent 10796e0 commit 27e290e

File tree

3 files changed

+45
-44
lines changed

3 files changed

+45
-44
lines changed

pyproject.toml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ classifiers = [
4444
"Topic :: Utilities",
4545
]
4646

47-
dependencies = ["databricks-sdk~=0.36.0",
47+
dependencies = ["databricks-sdk~=0.37.0",
4848
"databricks-labs-lsql>=0.5,<0.15",
4949
"databricks-labs-blueprint>=0.9.1,<0.10",
5050
"PyYAML>=6.0.0,<7.0.0",
@@ -107,6 +107,7 @@ verify = ["black --check . --extend-exclude 'tests/unit/source_code/samples
107107
lint = ["pylint --output-format=colorized -j 0 src tests"]
108108
cmds = "python tests/integration/cmds.py"
109109

110+
110111
[tool.pytest.ini_options]
111112
# TODO: remove `-p no:warnings`
112113
addopts = "--no-header -p no:warnings"

tests/integration/install/test_installation.py

Lines changed: 0 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,10 @@
2121
)
2222
from databricks.sdk.retries import retried
2323
from databricks.sdk.service import compute
24-
from databricks.sdk.service.iam import PermissionLevel
2524

2625
from databricks.labs.ucx.__about__ import __version__
2726
from databricks.labs.ucx.config import WorkspaceConfig
2827
from databricks.labs.ucx.install import WorkspaceInstaller
29-
from databricks.labs.ucx.workspace_access.groups import MigratedGroup
3028

3129
from ..conftest import MockInstallationContext
3230

@@ -90,47 +88,6 @@ def factory(
9088
pending.remove()
9189

9290

93-
def test_experimental_permissions_migration_for_group_with_same_name(
94-
installation_ctx,
95-
make_cluster_policy,
96-
make_cluster_policy_permissions,
97-
):
98-
ws_group, acc_group = installation_ctx.make_ucx_group()
99-
migrated_group = MigratedGroup.partial_info(ws_group, acc_group)
100-
cluster_policy = make_cluster_policy()
101-
make_cluster_policy_permissions(
102-
object_id=cluster_policy.policy_id,
103-
permission_level=PermissionLevel.CAN_USE,
104-
group_name=migrated_group.name_in_workspace,
105-
)
106-
107-
schema_a = installation_ctx.make_schema()
108-
table_a = installation_ctx.make_table(schema_name=schema_a.name)
109-
installation_ctx.make_grant(migrated_group.name_in_workspace, 'USAGE', schema_info=schema_a)
110-
installation_ctx.make_grant(migrated_group.name_in_workspace, 'OWN', schema_info=schema_a)
111-
installation_ctx.make_grant(migrated_group.name_in_workspace, 'SELECT', table_info=table_a)
112-
113-
installation_ctx.workspace_installation.run()
114-
115-
installation_ctx.deployed_workflows.run_workflow("migrate-groups")
116-
117-
object_permissions = installation_ctx.generic_permissions_support.load_as_dict(
118-
"cluster-policies", cluster_policy.policy_id
119-
)
120-
new_schema_grants = installation_ctx.grants_crawler.for_schema_info(schema_a)
121-
122-
if {"USAGE", "OWN"} != new_schema_grants[migrated_group.name_in_account] or object_permissions[
123-
migrated_group.name_in_account
124-
] != PermissionLevel.CAN_USE:
125-
installation_ctx.deployed_workflows.relay_logs("migrate-groups-experimental")
126-
assert {"USAGE", "OWN"} == new_schema_grants[
127-
migrated_group.name_in_account
128-
], "Incorrect schema grants for migrated group"
129-
assert (
130-
object_permissions[migrated_group.name_in_account] == PermissionLevel.CAN_USE
131-
), "Incorrect permissions for migrated group"
132-
133-
13491
@retried(on=[NotFound, TimeoutError], timeout=timedelta(minutes=3))
13592
def test_job_failure_propagates_correct_error_message_and_logs(ws, sql_backend, installation_ctx):
13693
installation_ctx.workspace_installation.run()

tests/integration/workspace_access/test_workflows.py

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@
55
from databricks.sdk.service.iam import PermissionLevel
66
from databricks.sdk.service.workspace import AclPermission
77

8+
from databricks.labs.ucx.workspace_access.groups import MigratedGroup
9+
810

911
def test_running_real_migrate_groups_job(
1012
installation_ctx,
@@ -94,3 +96,44 @@ def test_running_legacy_validate_groups_permissions_job(
9496

9597
# assert the job does not throw any exception
9698
installation_ctx.deployed_workflows.run_workflow("validate-groups-permissions")
99+
100+
101+
def test_permissions_migration_for_group_with_same_name(
102+
installation_ctx,
103+
make_cluster_policy,
104+
make_cluster_policy_permissions,
105+
):
106+
ws_group, acc_group = installation_ctx.make_ucx_group()
107+
migrated_group = MigratedGroup.partial_info(ws_group, acc_group)
108+
cluster_policy = make_cluster_policy()
109+
make_cluster_policy_permissions(
110+
object_id=cluster_policy.policy_id,
111+
permission_level=PermissionLevel.CAN_USE,
112+
group_name=migrated_group.name_in_workspace,
113+
)
114+
115+
schema_a = installation_ctx.make_schema()
116+
table_a = installation_ctx.make_table(schema_name=schema_a.name)
117+
installation_ctx.make_grant(migrated_group.name_in_workspace, 'USAGE', schema_info=schema_a)
118+
installation_ctx.make_grant(migrated_group.name_in_workspace, 'OWN', schema_info=schema_a)
119+
installation_ctx.make_grant(migrated_group.name_in_workspace, 'SELECT', table_info=table_a)
120+
121+
installation_ctx.workspace_installation.run()
122+
123+
installation_ctx.deployed_workflows.run_workflow("migrate-groups")
124+
125+
object_permissions = installation_ctx.generic_permissions_support.load_as_dict(
126+
"cluster-policies", cluster_policy.policy_id
127+
)
128+
new_schema_grants = installation_ctx.grants_crawler.for_schema_info(schema_a)
129+
130+
if {"USAGE", "OWN"} != new_schema_grants[migrated_group.name_in_account] or object_permissions[
131+
migrated_group.name_in_account
132+
] != PermissionLevel.CAN_USE:
133+
installation_ctx.deployed_workflows.relay_logs("migrate-groups")
134+
assert {"USAGE", "OWN"} == new_schema_grants[
135+
migrated_group.name_in_account
136+
], "Incorrect schema grants for migrated group"
137+
assert (
138+
object_permissions[migrated_group.name_in_account] == PermissionLevel.CAN_USE
139+
), "Incorrect permissions for migrated group"

0 commit comments

Comments
 (0)