summaryrefslogtreecommitdiff
path: root/ironic/tests/unit/api/test_acl.py
diff options
context:
space:
mode:
Diffstat (limited to 'ironic/tests/unit/api/test_acl.py')
-rw-r--r--ironic/tests/unit/api/test_acl.py21
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