Skip to content

Commit f8b067f

Browse files
[Python] Add more tests cases for policy CLI (#2831)
1 parent 3c5dbaf commit f8b067f

File tree

1 file changed

+53
-6
lines changed

1 file changed

+53
-6
lines changed

client/python/integration_tests/test_catalog_apis.py

Lines changed: 53 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -271,6 +271,51 @@ def test_policies(
271271
assert updated_policy.policy.description == updated_policy_description
272272
assert json.loads(updated_policy.policy.content) == updated_policy_content
273273

274+
# ATTACH to catalog
275+
test_policy_api.attach_policy(
276+
prefix=test_catalog.name,
277+
namespace=namespace_name,
278+
policy_name=policy_name,
279+
attach_policy_request=AttachPolicyRequest(
280+
target=PolicyAttachmentTarget(type="catalog")
281+
),
282+
)
283+
284+
# GET APPLICABLE on catalog
285+
applicable_policies_catalog = test_policy_api.get_applicable_policies(
286+
prefix=test_catalog.name
287+
)
288+
289+
assert len(applicable_policies_catalog.applicable_policies) == 1
290+
assert applicable_policies_catalog.applicable_policies[0].name == policy_name
291+
292+
# GET inherited APPLICABLE on table
293+
applicable_for_table_inherit = test_policy_api.get_applicable_policies(
294+
prefix=test_catalog.name,
295+
namespace=format_namespace(sub_namespace_path),
296+
target_name=table_name,
297+
)
298+
assert len(applicable_for_table_inherit.applicable_policies) == 1
299+
assert applicable_for_table_inherit.applicable_policies[0].name == policy_name
300+
assert applicable_for_table_inherit.applicable_policies[0].inherited
301+
302+
# DETACH from catalog
303+
test_policy_api.detach_policy(
304+
prefix=test_catalog.name,
305+
namespace=namespace_name,
306+
policy_name=policy_name,
307+
detach_policy_request=DetachPolicyRequest(
308+
target=PolicyAttachmentTarget(type="catalog")
309+
),
310+
)
311+
312+
# GET APPLICABLE on catalog after DETACH
313+
applicable_policies_catalog_after_detach = (
314+
test_policy_api.get_applicable_policies(prefix=test_catalog.name)
315+
)
316+
317+
assert len(applicable_policies_catalog_after_detach.applicable_policies) == 0
318+
274319
# ATTACH to namespace
275320
test_policy_api.attach_policy(
276321
prefix=test_catalog.name,
@@ -282,11 +327,11 @@ def test_policies(
282327
)
283328

284329
# GET APPLICABLE on namespace
285-
applicable_policies = test_policy_api.get_applicable_policies(
330+
applicable_policies_namespace = test_policy_api.get_applicable_policies(
286331
prefix=test_catalog.name, namespace=format_namespace(sub_namespace_path)
287332
)
288-
assert len(applicable_policies.applicable_policies) == 1
289-
assert applicable_policies.applicable_policies[0].name == policy_name
333+
assert len(applicable_policies_namespace.applicable_policies) == 1
334+
assert applicable_policies_namespace.applicable_policies[0].name == policy_name
290335

291336
# DETACH from namespace
292337
test_policy_api.detach_policy(
@@ -299,10 +344,12 @@ def test_policies(
299344
)
300345

301346
# GET APPLICABLE on namespace after DETACH
302-
applicable_policies_after_detach = test_policy_api.get_applicable_policies(
303-
prefix=test_catalog.name, namespace=format_namespace(sub_namespace_path)
347+
applicable_policies_namespace_after_detach = (
348+
test_policy_api.get_applicable_policies(
349+
prefix=test_catalog.name, namespace=format_namespace(sub_namespace_path)
350+
)
304351
)
305-
assert len(applicable_policies_after_detach.applicable_policies) == 0
352+
assert len(applicable_policies_namespace_after_detach.applicable_policies) == 0
306353

307354
# ATTACH to table
308355
test_policy_api.attach_policy(

0 commit comments

Comments
 (0)