openzeppelin_relayer/constants/
transactions.rs1use crate::models::TransactionStatus;
9
10pub const FINAL_TRANSACTION_STATUSES: &[TransactionStatus] = &[
14 TransactionStatus::Canceled,
15 TransactionStatus::Confirmed,
16 TransactionStatus::Failed,
17 TransactionStatus::Expired,
18];
19
20#[cfg(test)]
21mod tests {
22 use super::*;
23
24 #[test]
25 fn test_final_transaction_statuses_contains_expected_values() {
26 assert_eq!(FINAL_TRANSACTION_STATUSES.len(), 4);
27 assert!(FINAL_TRANSACTION_STATUSES.contains(&TransactionStatus::Canceled));
28 assert!(FINAL_TRANSACTION_STATUSES.contains(&TransactionStatus::Confirmed));
29 assert!(FINAL_TRANSACTION_STATUSES.contains(&TransactionStatus::Failed));
30 assert!(FINAL_TRANSACTION_STATUSES.contains(&TransactionStatus::Expired));
31 }
32
33 #[test]
34 fn test_final_transaction_statuses_excludes_non_final_states() {
35 assert!(!FINAL_TRANSACTION_STATUSES.contains(&TransactionStatus::Pending));
36 assert!(!FINAL_TRANSACTION_STATUSES.contains(&TransactionStatus::Sent));
37 assert!(!FINAL_TRANSACTION_STATUSES.contains(&TransactionStatus::Submitted));
38 assert!(!FINAL_TRANSACTION_STATUSES.contains(&TransactionStatus::Mined));
39 }
40}