macro_rules! validate_permissions {
($($permission:expr),* $(,)?) => { ... };
}Expand description
Macro for test-time permission validation.
Use this macro to validate a complete set of permission names during tests.
It generates a test that checks the provided strings with
crate::permissions::collision_checker::PermissionCollisionChecker.
The macro accepts both square bracket and parenthesis invocation forms.
§Examples
use webgates_core::validate_permissions;
validate_permissions![
"read:users",
"write:users",
"delete:users",
"admin:system",
];
validate_permissions!(
"read:posts",
"write:posts",
"delete:posts"
);
validate_permissions![
"api:read",
"api:write",
"admin:users",
"admin:system",
"billing:read",
"billing:write",
];§Panics
The generated test fails when the provided permission strings contain duplicates or hash collisions.