diff options
Diffstat (limited to 'ironic/tests/unit/api/test_acl.py')
-rw-r--r-- | ironic/tests/unit/api/test_acl.py | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/ironic/tests/unit/api/test_acl.py b/ironic/tests/unit/api/test_acl.py index 5793e95a8..f5cbe498d 100644 --- a/ironic/tests/unit/api/test_acl.py +++ b/ironic/tests/unit/api/test_acl.py @@ -81,10 +81,18 @@ class TestACLBase(base.BaseApiTest): body=None, assert_status=None, assert_dict_contains=None, assert_list_length=None, - deprecated=None): + deprecated=None, + self_manage_nodes=True): path = path.format(**self.format_data) self.mock_auth.side_effect = self._fake_process_request + # Set self management override + if not self_manage_nodes: + cfg.CONF.set_override( + 'project_admin_can_manage_own_nodes', + False, + 'api') + # always request the latest api version version = api_versions.max_version_string() rheaders = { @@ -278,6 +286,8 @@ class TestRBACModelBeforeScopesBase(TestACLBase): db_utils.create_test_node_trait( node_id=fake_db_node['id']) fake_history = db_utils.create_test_history(node_id=fake_db_node.id) + fake_inventory = db_utils.create_test_inventory( + node_id=fake_db_node.id) # dedicated node for portgroup addition test to avoid # false positives with test runners. db_utils.create_test_node( @@ -301,6 +311,7 @@ class TestRBACModelBeforeScopesBase(TestACLBase): 'volume_target_ident': fake_db_volume_target['uuid'], 'volume_connector_ident': fake_db_volume_connector['uuid'], 'history_ident': fake_history['uuid'], + 'node_inventory': fake_inventory, }) @@ -407,6 +418,8 @@ class TestRBACProjectScoped(TestACLBase): resource_class="CUSTOM_TEST") owned_node_history = db_utils.create_test_history( node_id=owned_node.id) + owned_node_inventory = db_utils.create_test_inventory( + node_id=owned_node.id) # Leased nodes leased_node = db_utils.create_test_node( @@ -437,6 +450,8 @@ class TestRBACProjectScoped(TestACLBase): leased_node_history = db_utils.create_test_history( node_id=leased_node.id) + leased_node_inventory = db_utils.create_test_inventory( + node_id=leased_node.id) # Random objects that shouldn't be project visible other_node = db_utils.create_test_node( @@ -472,7 +487,9 @@ class TestRBACProjectScoped(TestACLBase): 'owner_allocation': fake_owner_allocation['uuid'], 'lessee_allocation': fake_leased_allocation['uuid'], 'owned_history_ident': owned_node_history['uuid'], - 'lessee_history_ident': leased_node_history['uuid']}) + 'lessee_history_ident': leased_node_history['uuid'], + 'owned_inventory': owned_node_inventory, + 'leased_inventory': leased_node_inventory}) @ddt.file_data('test_rbac_project_scoped.yaml') @ddt.unpack |