Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #[derive(Debug, PartialEq)]
- struct MyError {}
- fn test_me(return_err: bool) -> Result<(), MyError> {
- if return_err {
- return Err(MyError{});
- }else {
- return Ok(());
- }
- }
- #[cfg(test)]
- mod test {
- use super::*;
- macro_rules! test_cases {
- ($($name:ident: $value:expr,)*) => {
- $(
- #[test]
- fn $name() {
- let (return_err, expected) = $value;
- let result = test_me(return_err);
- //assert_eq!(result, expected);
- match expected {
- Ok(_) => assert!(result.is_ok()),
- Err(_) => assert_eq!(result.unwrap_err(), expected.unwrap_err())
- }
- }
- )*
- }
- }
- test_cases! {
- test_0: (false, Ok(())),
- test_1: (true, Result::Err::<(), MyError>(MyError{})),
- }
- }
Add Comment
Please, Sign In to add comment