Skip to content

Commit fbfe5c3

Browse files
committed
Add subscription unauthorized pause/unpause revert tests
1 parent ed7f139 commit fbfe5c3

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
@@ -932,6 +932,34 @@ fn test_mutations_succeed_after_unpause() {
932932
assert!(client.is_subscriber(&fan, &creator));
933933
}
934934

935+
#[test]
936+
fn test_pause_non_admin_rejected() {
937+
let (env, client, admin, token, _token_admin) = setup_test();
938+
let fee_recipient = Address::generate(&env);
939+
940+
client.init(&admin, &500, &fee_recipient, &token.address, &1000);
941+
env.set_auths(&[]);
942+
943+
let result = client.try_pause();
944+
assert!(result.is_err(), "non-admin must not pause the contract");
945+
assert!(!client.is_paused(), "contract must remain unpaused after unauthorized pause attempt");
946+
}
947+
948+
#[test]
949+
fn test_unpause_non_admin_rejected() {
950+
let (env, client, admin, token, _token_admin) = setup_test();
951+
let fee_recipient = Address::generate(&env);
952+
953+
client.init(&admin, &500, &fee_recipient, &token.address, &1000);
954+
client.pause();
955+
assert!(client.is_paused());
956+
957+
env.set_auths(&[]);
958+
let result = client.try_unpause();
959+
assert!(result.is_err(), "non-admin must not unpause the contract");
960+
assert!(client.is_paused(), "contract must remain paused after unauthorized unpause attempt");
961+
}
962+
935963
// ── set_fee_recipient (admin fee recipient rotation) ─────────────────────────
936964

937965
#[test]

0 commit comments

Comments
 (0)