refactor check_trait function
This commit is contained in:
parent
f988c80854
commit
4ff1f34b08
3 changed files with 15 additions and 16 deletions
|
|
@ -117,24 +117,22 @@ mod tests {
|
|||
for input in inputs {
|
||||
{
|
||||
// check AliasID
|
||||
let _ = AliasID(input.to_string()); // direct creation
|
||||
let aid = AliasID::from(input.to_string());
|
||||
check_trait(&input, &aid.0, "From<String>", "AliasID");
|
||||
check_trait(&input, &aid.as_ref(), "AsRef<str>", "AliasID");
|
||||
check_trait(&aid.0, input, "From<String>", "AliasID");
|
||||
check_trait(aid.as_ref(), input, "AsRef<str>", "AliasID");
|
||||
}
|
||||
|
||||
{
|
||||
// check ShareID
|
||||
let _ = ShareID(input.to_string()); // direct creation
|
||||
let sid = ShareID::from(input.to_string());
|
||||
check_trait(&input, &sid.0, "From<String>", "ShareID");
|
||||
check_trait(&input, &sid.to_string(), "Display", "ShareID");
|
||||
check_trait(&sid.0, input, "From<String>", "ShareID");
|
||||
check_trait(sid.to_string(), input, "Display", "ShareID");
|
||||
}
|
||||
|
||||
{
|
||||
// check FileID
|
||||
let fid = FileID(input.to_string()); // direct creation
|
||||
check_trait(&input, &fid.to_string(), "Display", "FileID");
|
||||
let fid = FileID(input.to_string());
|
||||
check_trait(fid.to_string(), input, "Display", "FileID");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -115,8 +115,8 @@ mod tests {
|
|||
|
||||
for uri_data in cases {
|
||||
let uri = Uri(uri_data.to_string());
|
||||
check_trait(&uri_data, &uri.to_string(), "Display", "Uri");
|
||||
check_trait(&uri_data.as_bytes(), &uri.as_ref(), "AsRef<[u8]>", "Uri");
|
||||
check_trait(uri.to_string(), uri_data, "Display", "Uri");
|
||||
check_trait(uri.as_ref(), uri_data.as_bytes(), "AsRef<[u8]>", "Uri");
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -137,7 +137,7 @@ mod tests {
|
|||
|
||||
for (good, expected) in cases {
|
||||
let uri = Uri::from(good.to_string());
|
||||
check_trait(&expected, &uri.0, "From<String>", "Uri");
|
||||
check_trait(uri.0, expected, "From<String>", "Uri");
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -159,7 +159,7 @@ mod tests {
|
|||
|
||||
for bad in cases {
|
||||
let uri = Uri::from(bad.to_string());
|
||||
check_trait(&bad, &uri.0, "From<String>", "Uri");
|
||||
check_trait(uri.0, bad, "From<String>", "Uri");
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -6,14 +6,15 @@ use std::{fmt, io::Write};
|
|||
|
||||
use tempfile::NamedTempFile;
|
||||
|
||||
pub fn check_trait<E, A>(expected: &E, actual: &A, tr: &'static str, ty: &'static str)
|
||||
pub fn check_trait<A, E>(actual: A, expected: E, tr: &str, ty: &str)
|
||||
where
|
||||
E: fmt::Debug + PartialEq<A>,
|
||||
A: fmt::Debug,
|
||||
A: fmt::Debug + PartialEq<E>,
|
||||
E: fmt::Debug,
|
||||
{
|
||||
assert_eq!(
|
||||
actual, expected,
|
||||
"`impl {tr} for {ty}` expected: {:?}, actual: {:?}",
|
||||
expected, actual,
|
||||
"`impl {tr} for {ty}` expected: {expected:?}, actual: {actual:?}",
|
||||
);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue