@@ -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