Skip to content

Commit 7c1a04a

Browse files
Developed the generate_scope_sized method of the rbac benchmarking module to enable the creation of more than 256 scopes. Reduced the range for the pallet id length parameter of the rbac benchmarking.
1 parent 7ef8f8a commit 7c1a04a

File tree

1 file changed

+11
-11
lines changed

1 file changed

+11
-11
lines changed

pallets/rbac/src/benchmarking.rs

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,8 @@ pub fn generate_role_sized(id: u8, size: u32) -> Vec<u8> {
2121
generate_vector(1, id, size)
2222
}
2323

24-
pub fn generate_scope_sized(id: u8, size: u32) -> Vec<u8> {
25-
generate_vector(2, id, size)
24+
pub fn generate_scope_sized(id: u32, size: u32) -> Vec<u8> {
25+
generate_vector((id / u8::MAX as u32) as u8, (id % u8::MAX as u32) as u8, size)
2626
}
2727

2828
pub fn generate_roles_sized(num_roles: u32, size: u32) -> Vec<Vec<u8>> {
@@ -50,7 +50,7 @@ pub fn setup_roles_sized<T: Config>(pallet_id: IdOrVec, num_roles: u32, size: u3
5050
pub fn setup_scopes_sized<T: Config>(pallet_id: IdOrVec, num_scopes: u32) -> Vec<ScopeId> {
5151
let mut scope_ids = Vec::new();
5252
for s in 0..num_scopes {
53-
let scope = generate_scope_sized(s as u8, 10);
53+
let scope = generate_scope_sized(s, 10);
5454
let scope_id = generate_id(scope);
5555
assert_ok!(RBAC::<T>::create_scope(pallet_id.clone(), scope_id));
5656
scope_ids.push(scope_id);
@@ -122,7 +122,7 @@ pub fn setup_permissions_sized<T: Config>(
122122
permissions.into_iter().map(|permission| generate_id(permission)).collect()
123123
}
124124

125-
pub fn generate_vector(prefix: u8, id: u8, size: u32) -> scale_info::prelude::vec::Vec<u8> {
125+
pub fn generate_vector(prefix: u8, id: u8, size: u32) -> Vec<u8> {
126126
assert!(size > 0, "vector size must be greater than 0");
127127
let mut v = vec![id; size as usize];
128128
v[0] = prefix;
@@ -135,7 +135,7 @@ mod benchmarks {
135135

136136
#[benchmark]
137137
fn tx_create_and_set_roles(
138-
i: Linear<1, 400>,
138+
i: Linear<1, 100>,
139139
l: Linear<2, { T::RoleMaxLen::get() }>,
140140
r: Linear<1, { T::MaxRolesPerPallet::get() }>,
141141
) {
@@ -148,7 +148,7 @@ mod benchmarks {
148148

149149
#[benchmark]
150150
fn tx_remove_role_from_user(
151-
i: Linear<1, 400>,
151+
i: Linear<1, 100>,
152152
s: Linear<1, { T::MaxScopesPerPallet::get() }>,
153153
r: Linear<1, { T::MaxRolesPerUser::get() }>,
154154
u: Linear<1, { T::MaxUsersPerRole::get() }>,
@@ -172,7 +172,7 @@ mod benchmarks {
172172

173173
#[benchmark]
174174
fn tx_create_and_set_permissions(
175-
i: Linear<1, 400>,
175+
i: Linear<1, 100>,
176176
l: Linear<2, { T::PermissionMaxLen::get() }>,
177177
p: Linear<1, { T::MaxPermissionsPerRole::get() }>,
178178
) {
@@ -190,7 +190,7 @@ mod benchmarks {
190190

191191
#[benchmark]
192192
fn tx_assign_role_to_user(
193-
i: Linear<1, 400>,
193+
i: Linear<1, 100>,
194194
s: Linear<1, { T::MaxScopesPerPallet::get() }>,
195195
r: Linear<1, { T::MaxRolesPerUser::get() }>,
196196
u: Linear<1, { T::MaxUsersPerRole::get() - 1 }>,
@@ -223,7 +223,7 @@ mod benchmarks {
223223

224224
#[benchmark]
225225
fn revoke_permission_from_role(
226-
i: Linear<1, 400>,
226+
i: Linear<1, 100>,
227227
l: Linear<2, { T::PermissionMaxLen::get() }>,
228228
p: Linear<1, { T::MaxPermissionsPerRole::get() }>,
229229
) {
@@ -243,7 +243,7 @@ mod benchmarks {
243243

244244
#[benchmark]
245245
fn remove_permission_from_pallet(
246-
i: Linear<1, 400>,
246+
i: Linear<1, 100>,
247247
l: Linear<2, { T::PermissionMaxLen::get() }>,
248248
p: Linear<1, { T::MaxPermissionsPerRole::get() }>,
249249
m: Linear<2, { T::RoleMaxLen::get() }>,
@@ -259,7 +259,7 @@ mod benchmarks {
259259

260260
#[benchmark]
261261
fn remove_pallet_permissions(
262-
i: Linear<1, 400>,
262+
i: Linear<1, 100>,
263263
l: Linear<2, { T::PermissionMaxLen::get() }>,
264264
s: Linear<1, { T::MaxScopesPerPallet::get() }>,
265265
p: Linear<1, { T::MaxPermissionsPerRole::get() }>,

0 commit comments

Comments
 (0)