config: Fix assert_error testing macro

Fixed the `assert_error!()` test macro so that it correctly handles the
scenario where the test expects an error, but the actual result was `Ok`
(no error).

Signed-off-by: James O. D. Hunt <james.o.hunt@intel.com>
This commit is contained in:
James O. D. Hunt 2020-12-03 16:24:27 +00:00
parent 594c47ab6c
commit 38f0d8d3ce

View File

@ -337,12 +337,15 @@ mod tests {
assert!(*expected_level == actual_level, $msg); assert!(*expected_level == actual_level, $msg);
} else { } else {
let expected_error = $expected_result.as_ref().unwrap_err(); let expected_error = $expected_result.as_ref().unwrap_err();
let actual_error = $actual_result.unwrap_err();
let expected_error_msg = format!("{:?}", expected_error); let expected_error_msg = format!("{:?}", expected_error);
if let Err(actual_error) = $actual_result {
let actual_error_msg = format!("{:?}", actual_error); let actual_error_msg = format!("{:?}", actual_error);
assert!(expected_error_msg == actual_error_msg, $msg); assert!(expected_error_msg == actual_error_msg, $msg);
} else {
assert!(expected_error_msg == "expected error, got OK", $msg);
}
} }
}; };
} }