Skip to content

Commit 2a18f6d

Browse files
authored
Merge pull request #1262 from had3sgames/issue-891-add-subscription-unauthorized-revert-tests
Add subscription unauthorized pause/unpause revert tests
2 parents a0a5006 + fbfe5c3 commit 2a18f6d

1 file changed

Lines changed: 28 additions & 0 deletions

File tree

  • contract/contracts/subscription/src

contract/contracts/subscription/src/test.rs

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1173,6 +1173,34 @@ fn test_mutations_succeed_after_unpause() {
11731173
assert!(client.is_subscriber(&fan, &creator));
11741174
}
11751175

1176+
#[test]
1177+
fn test_pause_non_admin_rejected() {
1178+
let (env, client, admin, token, _token_admin) = setup_test();
1179+
let fee_recipient = Address::generate(&env);
1180+
1181+
client.init(&admin, &500, &fee_recipient, &token.address, &1000);
1182+
env.set_auths(&[]);
1183+
1184+
let result = client.try_pause();
1185+
assert!(result.is_err(), "non-admin must not pause the contract");
1186+
assert!(!client.is_paused(), "contract must remain unpaused after unauthorized pause attempt");
1187+
}
1188+
1189+
#[test]
1190+
fn test_unpause_non_admin_rejected() {
1191+
let (env, client, admin, token, _token_admin) = setup_test();
1192+
let fee_recipient = Address::generate(&env);
1193+
1194+
client.init(&admin, &500, &fee_recipient, &token.address, &1000);
1195+
client.pause();
1196+
assert!(client.is_paused());
1197+
1198+
env.set_auths(&[]);
1199+
let result = client.try_unpause();
1200+
assert!(result.is_err(), "non-admin must not unpause the contract");
1201+
assert!(client.is_paused(), "contract must remain paused after unauthorized unpause attempt");
1202+
}
1203+
11761204
// ── set_fee_recipient (admin fee recipient rotation) ─────────────────────────
11771205

11781206
#[test]

0 commit comments

Comments
 (0)