test_utils.rs 630 B

123456789101112131415
  1. pub(crate) macro check_err($parse: expr, $error: pat, $remains: expr) {
  2. match $parse {
  3. Ok(result) => panic!("Expected Err, got {:#?}", result),
  4. Err((remains, $error)) if *remains == *$remains => (),
  5. Err((_, err)) => panic!("Got wrong error: {:?}", err),
  6. }
  7. }
  8. pub(crate) macro check_ok($parse: expr, $expected: expr, $remains: expr) {
  9. match $parse {
  10. Ok((remains, result)) if remains == *$remains && result == $expected => (),
  11. Ok(result) => panic!("Successfully parsed Ok, but it was wrong: {:#?}", result),
  12. Err((_, err)) => panic!("Expected Ok, got {:#?}", err),
  13. }
  14. }