Skip to content

Commit 378226f

Browse files
committed
Adjust config test to test correct config value.
1 parent e1e6af8 commit 378226f

File tree

1 file changed

+56
-106
lines changed

1 file changed

+56
-106
lines changed

src/internet_identity/tests/integration/config/register_rate_limit.rs

Lines changed: 56 additions & 106 deletions
Original file line numberDiff line numberDiff line change
@@ -2,153 +2,103 @@ use canister_tests::api::internet_identity as api;
22
use canister_tests::framework::{
33
env, install_ii_canister_with_arg, upgrade_ii_canister_with_arg, II_WASM,
44
};
5-
use internet_identity_interface::internet_identity::types::InternetIdentityInit;
5+
use internet_identity_interface::internet_identity::types::{
6+
InternetIdentityInit, RateLimitConfig,
7+
};
68

79
#[test]
810
fn should_init_default() {
911
let env = env();
1012

1113
let canister_id = install_ii_canister_with_arg(&env, II_WASM.clone(), None);
1214
assert_eq!(
13-
api::config(&env, canister_id).unwrap().related_origins,
14-
None
15+
api::config(&env, canister_id).unwrap().register_rate_limit,
16+
Some(RateLimitConfig {
17+
time_per_token_ns: 10_000_000_000,
18+
max_tokens: 20_000,
19+
})
1520
);
1621
}
1722

1823
#[test]
1924
fn should_init_config() {
2025
let env = env();
21-
let configs = vec![
22-
InternetIdentityInit {
23-
related_origins: None,
24-
..Default::default()
25-
},
26-
InternetIdentityInit {
27-
related_origins: Some(vec![]),
28-
..Default::default()
29-
},
30-
InternetIdentityInit {
31-
related_origins: Some(vec!["https://example.com".into()]),
32-
..Default::default()
33-
},
34-
InternetIdentityInit {
35-
related_origins: Some(vec![
36-
"https://example1.com".into(),
37-
"https://example2.com".into(),
38-
]),
39-
..Default::default()
40-
},
41-
];
42-
43-
for config in configs {
44-
let canister_id = install_ii_canister_with_arg(&env, II_WASM.clone(), Some(config.clone()));
45-
assert_eq!(
46-
api::config(&env, canister_id).unwrap().related_origins,
47-
config.related_origins
48-
);
49-
}
50-
}
51-
52-
#[test]
53-
fn should_enable_config() {
54-
let env = env();
55-
let mut config = InternetIdentityInit {
56-
related_origins: None,
26+
let config = InternetIdentityInit {
27+
register_rate_limit: Some(RateLimitConfig {
28+
time_per_token_ns: 1_000_000_000,
29+
max_tokens: 100,
30+
}),
5731
..Default::default()
5832
};
59-
let enabled_value = Some(vec!["https://example.com".into()]);
60-
6133
let canister_id = install_ii_canister_with_arg(&env, II_WASM.clone(), Some(config.clone()));
62-
config.related_origins = enabled_value.clone();
63-
upgrade_ii_canister_with_arg(&env, canister_id, II_WASM.clone(), Some(config.clone())).unwrap();
6434
assert_eq!(
65-
api::config(&env, canister_id).unwrap().related_origins,
66-
enabled_value
35+
api::config(&env, canister_id).unwrap().register_rate_limit,
36+
config.register_rate_limit
6737
);
6838
}
6939

7040
#[test]
71-
fn should_disable_config() {
72-
let env = env();
73-
let mut config = InternetIdentityInit {
74-
related_origins: Some(vec!["https://example.com".into()]),
75-
..Default::default()
76-
};
77-
let disabled_value = Some(vec![]);
41+
fn should_enable_config() {
42+
// Register rate limit config cannot be enabled,
43+
// this test is here to explicitly mention this.
44+
}
7845

79-
let canister_id = install_ii_canister_with_arg(&env, II_WASM.clone(), Some(config.clone()));
80-
config.related_origins = disabled_value.clone();
81-
upgrade_ii_canister_with_arg(&env, canister_id, II_WASM.clone(), Some(config.clone())).unwrap();
82-
assert_eq!(
83-
api::config(&env, canister_id).unwrap().related_origins,
84-
disabled_value
85-
);
46+
#[test]
47+
fn should_disable_config() {
48+
// Register rate limit config cannot be disabled,
49+
// this test is here to explicitly mention this.
8650
}
8751

8852
#[test]
8953
fn should_update_config() {
9054
let env = env();
9155
let mut config = InternetIdentityInit {
92-
related_origins: Some(vec!["https://example.com".into()]),
56+
register_rate_limit: Some(RateLimitConfig {
57+
time_per_token_ns: 1_000_000_000,
58+
max_tokens: 100,
59+
}),
9360
..Default::default()
9461
};
95-
let updated_value = Some(vec![
96-
"https://example1.com".into(),
97-
"https://example2.com".into(),
98-
]);
62+
let updated_value = Some(RateLimitConfig {
63+
time_per_token_ns: 2_000_000_000,
64+
max_tokens: 200,
65+
});
9966

10067
let canister_id = install_ii_canister_with_arg(&env, II_WASM.clone(), Some(config.clone()));
101-
config.related_origins = updated_value.clone();
68+
config.register_rate_limit = updated_value.clone();
10269
upgrade_ii_canister_with_arg(&env, canister_id, II_WASM.clone(), Some(config.clone())).unwrap();
10370
assert_eq!(
104-
api::config(&env, canister_id).unwrap().related_origins,
71+
api::config(&env, canister_id).unwrap().register_rate_limit,
10572
updated_value
10673
);
10774
}
10875

10976
#[test]
11077
fn should_retain_config() {
11178
let env = env();
112-
let configs = vec![
113-
InternetIdentityInit {
114-
related_origins: None,
115-
..Default::default()
116-
},
117-
InternetIdentityInit {
118-
related_origins: Some(vec![]),
119-
..Default::default()
120-
},
121-
InternetIdentityInit {
79+
let config = InternetIdentityInit {
80+
register_rate_limit: Some(RateLimitConfig {
81+
time_per_token_ns: 1_000_000_000,
82+
max_tokens: 100,
83+
}),
84+
..Default::default()
85+
};
86+
let canister_id = install_ii_canister_with_arg(&env, II_WASM.clone(), Some(config.clone()));
87+
// No config argument
88+
upgrade_ii_canister_with_arg(&env, canister_id, II_WASM.clone(), None).unwrap();
89+
// Unrelated config change
90+
upgrade_ii_canister_with_arg(
91+
&env,
92+
canister_id,
93+
II_WASM.clone(),
94+
Some(InternetIdentityInit {
12295
related_origins: Some(vec!["https://example.com".into()]),
12396
..Default::default()
124-
},
125-
InternetIdentityInit {
126-
related_origins: Some(vec![
127-
"https://example1.com".into(),
128-
"https://example2.com".into(),
129-
]),
130-
..Default::default()
131-
},
132-
];
133-
134-
for config in configs {
135-
let canister_id = install_ii_canister_with_arg(&env, II_WASM.clone(), Some(config.clone()));
136-
// No config argument
137-
upgrade_ii_canister_with_arg(&env, canister_id, II_WASM.clone(), None).unwrap();
138-
// Unrelated config change
139-
upgrade_ii_canister_with_arg(
140-
&env,
141-
canister_id,
142-
II_WASM.clone(),
143-
Some(InternetIdentityInit {
144-
related_origins: Some(vec!["https://example.com".into()]),
145-
..Default::default()
146-
}),
147-
)
148-
.unwrap();
149-
assert_eq!(
150-
api::config(&env, canister_id).unwrap().related_origins,
151-
config.related_origins
152-
);
153-
}
97+
}),
98+
)
99+
.unwrap();
100+
assert_eq!(
101+
api::config(&env, canister_id).unwrap().register_rate_limit,
102+
config.register_rate_limit
103+
);
154104
}

0 commit comments

Comments
 (0)