Remove testing macros from docs
This commit is contained in:
@@ -244,72 +244,73 @@ fn default_visitor() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
#[doc(hidden)]
|
#[doc(hidden)]
|
||||||
mod testing {
|
#[macro_export]
|
||||||
#[macro_export]
|
macro_rules! test_for_type {
|
||||||
macro_rules! test_for_type {
|
($type:ty, $value:expr, $content:expr) => {{
|
||||||
($type:ty, $value:expr, $content:expr) => {{
|
#[derive(Debug, PartialEq, YaDeserialize, YaSerialize)]
|
||||||
#[derive(Debug, PartialEq, YaDeserialize, YaSerialize)]
|
#[yaserde(rename = "data")]
|
||||||
#[yaserde(rename = "data")]
|
pub struct Data {
|
||||||
pub struct Data {
|
item: $type,
|
||||||
item: $type,
|
}
|
||||||
}
|
|
||||||
|
|
||||||
let model = Data { item: $value };
|
let model = Data { item: $value };
|
||||||
|
|
||||||
let content = if let Some(str_value) = $content {
|
let content = if let Some(str_value) = $content {
|
||||||
let str_value: &str = str_value;
|
let str_value: &str = str_value;
|
||||||
format!("<data><item>{}</item></data>", str_value)
|
format!("<data><item>{}</item></data>", str_value)
|
||||||
} else {
|
} else {
|
||||||
"<data />".to_owned()
|
"<data />".to_owned()
|
||||||
};
|
|
||||||
|
|
||||||
serialize_and_validate!(model, content);
|
|
||||||
deserialize_and_validate!(&content, model, Data);
|
|
||||||
}};
|
|
||||||
}
|
|
||||||
|
|
||||||
#[macro_export]
|
|
||||||
macro_rules! test_for_attribute_type {
|
|
||||||
($type: ty, $value: expr, $content: expr) => {{
|
|
||||||
#[derive(Debug, PartialEq, YaDeserialize, YaSerialize)]
|
|
||||||
#[yaserde(rename = "data")]
|
|
||||||
pub struct Data {
|
|
||||||
#[yaserde(attribute)]
|
|
||||||
item: $type,
|
|
||||||
}
|
|
||||||
let model = Data { item: $value };
|
|
||||||
|
|
||||||
let content = if let Some(str_value) = $content {
|
|
||||||
"<data item=\"".to_string() + str_value + "\" />"
|
|
||||||
} else {
|
|
||||||
"<data />".to_string()
|
|
||||||
};
|
|
||||||
|
|
||||||
serialize_and_validate!(model, content);
|
|
||||||
deserialize_and_validate!(&content, model, Data);
|
|
||||||
}};
|
|
||||||
}
|
|
||||||
|
|
||||||
#[macro_export]
|
|
||||||
macro_rules! deserialize_and_validate {
|
|
||||||
($content: expr, $model: expr, $struct: tt) => {
|
|
||||||
log::debug!("deserialize_and_validate @ {}:{}", file!(), line!());
|
|
||||||
let loaded: Result<$struct, String> = yaserde::de::from_str($content);
|
|
||||||
assert_eq!(loaded, Ok($model));
|
|
||||||
};
|
};
|
||||||
}
|
|
||||||
|
|
||||||
#[macro_export]
|
serialize_and_validate!(model, content);
|
||||||
macro_rules! serialize_and_validate {
|
deserialize_and_validate!(&content, model, Data);
|
||||||
($model: expr, $content: expr) => {
|
}};
|
||||||
log::debug!("serialize_and_validate @ {}:{}", file!(), line!());
|
}
|
||||||
let data: Result<String, String> = yaserde::ser::to_string(&$model);
|
|
||||||
|
#[doc(hidden)]
|
||||||
let content = format!(r#"<?xml version="1.0" encoding="utf-8"?>{}"#, $content);
|
#[macro_export]
|
||||||
assert_eq!(
|
macro_rules! test_for_attribute_type {
|
||||||
data,
|
($type: ty, $value: expr, $content: expr) => {{
|
||||||
Ok(content.split("\n").map(|s| s.trim()).collect::<String>())
|
#[derive(Debug, PartialEq, YaDeserialize, YaSerialize)]
|
||||||
);
|
#[yaserde(rename = "data")]
|
||||||
};
|
pub struct Data {
|
||||||
}
|
#[yaserde(attribute)]
|
||||||
|
item: $type,
|
||||||
|
}
|
||||||
|
let model = Data { item: $value };
|
||||||
|
|
||||||
|
let content = if let Some(str_value) = $content {
|
||||||
|
"<data item=\"".to_string() + str_value + "\" />"
|
||||||
|
} else {
|
||||||
|
"<data />".to_string()
|
||||||
|
};
|
||||||
|
|
||||||
|
serialize_and_validate!(model, content);
|
||||||
|
deserialize_and_validate!(&content, model, Data);
|
||||||
|
}};
|
||||||
|
}
|
||||||
|
|
||||||
|
#[doc(hidden)]
|
||||||
|
#[macro_export]
|
||||||
|
macro_rules! deserialize_and_validate {
|
||||||
|
($content: expr, $model: expr, $struct: tt) => {
|
||||||
|
log::debug!("deserialize_and_validate @ {}:{}", file!(), line!());
|
||||||
|
let loaded: Result<$struct, String> = yaserde::de::from_str($content);
|
||||||
|
assert_eq!(loaded, Ok($model));
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
#[doc(hidden)]
|
||||||
|
#[macro_export]
|
||||||
|
macro_rules! serialize_and_validate {
|
||||||
|
($model: expr, $content: expr) => {
|
||||||
|
log::debug!("serialize_and_validate @ {}:{}", file!(), line!());
|
||||||
|
let data: Result<String, String> = yaserde::ser::to_string(&$model);
|
||||||
|
|
||||||
|
let content = format!(r#"<?xml version="1.0" encoding="utf-8"?>{}"#, $content);
|
||||||
|
assert_eq!(
|
||||||
|
data,
|
||||||
|
Ok(content.split("\n").map(|s| s.trim()).collect::<String>())
|
||||||
|
);
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user