Change enum strings to uppercase
This commit is contained in:
@@ -33,13 +33,13 @@ class temp_file:
|
|||||||
class AccountGroup(Enum):
|
class AccountGroup(Enum):
|
||||||
"""Permissions are set at group-level and accounts can belong to these groups."""
|
"""Permissions are set at group-level and accounts can belong to these groups."""
|
||||||
|
|
||||||
local_user = 1
|
LOCAL_USER = 1
|
||||||
"For performing basic actions on a node"
|
"For performing basic actions on a node"
|
||||||
domain_user = 2
|
DOMAIN_USER = 2
|
||||||
"For performing basic actions to the domain"
|
"For performing basic actions to the domain"
|
||||||
local_admin = 3
|
LOCAL_ADMIN = 3
|
||||||
"For full access to actions on a node"
|
"For full access to actions on a node"
|
||||||
domain_admin = 4
|
DOMAIN_ADMIN = 4
|
||||||
"For full access"
|
"For full access"
|
||||||
|
|
||||||
|
|
||||||
@@ -71,9 +71,9 @@ class DomainController(SimComponent):
|
|||||||
accounts: Dict[str, Account] = {}
|
accounts: Dict[str, Account] = {}
|
||||||
groups: Final[List[AccountGroup]] = list(AccountGroup)
|
groups: Final[List[AccountGroup]] = list(AccountGroup)
|
||||||
|
|
||||||
domain_group_membership: Dict[Literal[AccountGroup.domain_admin, AccountGroup.domain_user], List[Account]] = {}
|
domain_group_membership: Dict[Literal[AccountGroup.DOMAIN_ADMIN, AccountGroup.DOMAIN_USER], List[Account]] = {}
|
||||||
local_group_membership: Dict[
|
local_group_membership: Dict[
|
||||||
Tuple[temp_node, Literal[AccountGroup.local_admin, AccountGroup.local_user]], List[Account]
|
Tuple[temp_node, Literal[AccountGroup.LOCAL_ADMIN, AccountGroup.LOCAL_USER]], List[Account]
|
||||||
] = {}
|
] = {}
|
||||||
|
|
||||||
# references to non-owned objects. Not sure if all are needed here.
|
# references to non-owned objects. Not sure if all are needed here.
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ def test_group_action_validation() -> None:
|
|||||||
"create_folder",
|
"create_folder",
|
||||||
Action(
|
Action(
|
||||||
func=lambda request, context: self.create_folder(request[0]),
|
func=lambda request, context: self.create_folder(request[0]),
|
||||||
validator=GroupMembershipValidator([AccountGroup.local_admin, AccountGroup.domain_admin]),
|
validator=GroupMembershipValidator([AccountGroup.LOCAL_ADMIN, AccountGroup.DOMAIN_ADMIN]),
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -49,14 +49,14 @@ def test_group_action_validation() -> None:
|
|||||||
self.folders = [x for x in self.folders if x is not folder]
|
self.folders = [x for x in self.folders if x is not folder]
|
||||||
|
|
||||||
# check that the folder is created when a local admin tried to do it
|
# check that the folder is created when a local admin tried to do it
|
||||||
permitted_context = {"request_source": {"agent": "BLUE", "account": "User1", "groups": ["local_admin"]}}
|
permitted_context = {"request_source": {"agent": "BLUE", "account": "User1", "groups": ["LOCAL_ADMIN"]}}
|
||||||
my_node = Node(uuid="0000-0000-1234", name="pc")
|
my_node = Node(uuid="0000-0000-1234", name="pc")
|
||||||
my_node.apply_action(["create_folder", "memes"], context=permitted_context)
|
my_node.apply_action(["create_folder", "memes"], context=permitted_context)
|
||||||
assert len(my_node.folders) == 1
|
assert len(my_node.folders) == 1
|
||||||
assert my_node.folders[0].name == "memes"
|
assert my_node.folders[0].name == "memes"
|
||||||
|
|
||||||
# check that the number of folders is still 1 even after attempting to create a second one without permissions
|
# check that the number of folders is still 1 even after attempting to create a second one without permissions
|
||||||
invalid_context = {"request_source": {"agent": "BLUE", "account": "User1", "groups": ["local_user", "domain_user"]}}
|
invalid_context = {"request_source": {"agent": "BLUE", "account": "User1", "groups": ["LOCAL_USER", "DOMAIN_USER"]}}
|
||||||
my_node.apply_action(["create_folder", "memes2"], context=invalid_context)
|
my_node.apply_action(["create_folder", "memes2"], context=invalid_context)
|
||||||
assert len(my_node.folders) == 1
|
assert len(my_node.folders) == 1
|
||||||
assert my_node.folders[0].name == "memes"
|
assert my_node.folders[0].name == "memes"
|
||||||
@@ -97,14 +97,14 @@ def test_hierarchical_action_with_validation() -> None:
|
|||||||
"disable",
|
"disable",
|
||||||
Action(
|
Action(
|
||||||
func=lambda request, context: self.disable(),
|
func=lambda request, context: self.disable(),
|
||||||
validator=GroupMembershipValidator([AccountGroup.local_admin, AccountGroup.domain_admin]),
|
validator=GroupMembershipValidator([AccountGroup.LOCAL_ADMIN, AccountGroup.DOMAIN_ADMIN]),
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
self.action_manager.add_action(
|
self.action_manager.add_action(
|
||||||
"enable",
|
"enable",
|
||||||
Action(
|
Action(
|
||||||
func=lambda request, context: self.enable(),
|
func=lambda request, context: self.enable(),
|
||||||
validator=GroupMembershipValidator([AccountGroup.local_admin, AccountGroup.domain_admin]),
|
validator=GroupMembershipValidator([AccountGroup.LOCAL_ADMIN, AccountGroup.DOMAIN_ADMIN]),
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -164,14 +164,14 @@ def test_hierarchical_action_with_validation() -> None:
|
|||||||
my_node.install_app("Firefox")
|
my_node.install_app("Firefox")
|
||||||
|
|
||||||
non_admin_context = {
|
non_admin_context = {
|
||||||
"request_source": {"agent": "BLUE", "account": "User1", "groups": ["local_user", "domain_user"]}
|
"request_source": {"agent": "BLUE", "account": "User1", "groups": ["LOCAL_USER", "DOMAIN_USER"]}
|
||||||
}
|
}
|
||||||
|
|
||||||
admin_context = {
|
admin_context = {
|
||||||
"request_source": {
|
"request_source": {
|
||||||
"agent": "BLUE",
|
"agent": "BLUE",
|
||||||
"account": "User1",
|
"account": "User1",
|
||||||
"groups": ["local_admin", "domain_admin", "local_user", "domain_user"],
|
"groups": ["LOCAL_ADMIN", "DOMAIN_ADMIN", "LOCAL_USER", "DOMAIN_USER"],
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user