mars_core/testing/
helpers.rs

1use cosmwasm_std::{StdError, StdResult};
2
3/// Assert elements in vecs one by one in order to get a more meaningful error
4/// when debugging tests
5pub fn assert_eq_vec<T: std::fmt::Debug + PartialEq>(expected: Vec<T>, actual: Vec<T>) {
6    assert_eq!(expected.len(), actual.len());
7
8    for (i, element) in expected.iter().enumerate() {
9        assert_eq!(*element, actual[i]);
10    }
11}
12
13/// Assert StdError::GenericErr message with expected_msg
14pub fn assert_generic_error_message<T>(response: StdResult<T>, expected_msg: &str) {
15    match response {
16        Err(StdError::GenericErr { msg, .. }) => assert_eq!(msg, expected_msg),
17        Err(other_err) => panic!("Unexpected error: {:?}", other_err),
18        Ok(_) => panic!("SHOULD NOT ENTER HERE!"),
19    }
20}