tests(src/types/newtypes): Test if a full round-trip works
This commit is contained in:
parent
c2ef7d0a59
commit
31493968b5
|
@ -108,3 +108,34 @@ impl Drop for String {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[cfg(test)]
|
||||||
|
mod tests {
|
||||||
|
use crate::types::types_list;
|
||||||
|
|
||||||
|
use super::String;
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_string_round_trip() {
|
||||||
|
let start = "HI! I'm a nice string".to_owned();
|
||||||
|
let wrapper: String = start.clone().into();
|
||||||
|
|
||||||
|
assert_eq!(&start, wrapper.as_str());
|
||||||
|
assert_eq!(start, wrapper.to_string());
|
||||||
|
assert_eq!(start, wrapper.into_std_string());
|
||||||
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_string_round_trip_through_c() {
|
||||||
|
let start = "HI! I'm a nice string".to_owned();
|
||||||
|
|
||||||
|
let c_string: types_list::String = start.clone().into();
|
||||||
|
let wrapper: String = Into::<types_list::String>::into(c_string)
|
||||||
|
.try_into()
|
||||||
|
.unwrap();
|
||||||
|
|
||||||
|
assert_eq!(&start, wrapper.as_str());
|
||||||
|
assert_eq!(start, wrapper.to_string());
|
||||||
|
assert_eq!(start, wrapper.into_std_string());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
Reference in New Issue