use vize_s0::{Allocator, Vec};
pub fn parse_art_status_warnings<'a>(
allocator: &'a Allocator,
source: &'a str,
filename: &str,
) -> Vec<'a, &'a str> {
crate::parse::art_status_warnings(allocator, source, filename)
}
#[cfg(test)]
mod tests {
use super::parse_art_status_warnings;
use vize_s0::Allocator;
#[test]
fn unknown_status_returns_the_shared_warning() {
let allocator = Allocator::new();
let source = r#"<art title="Button" status="wip"></art>"#;
assert_eq!(
parse_art_status_warnings(&allocator, source, "button.art.vue").as_slice(),
[
"button.art.vue: unknown status \"wip\"; falling back to \"draft\" (expected \"draft\" | \"ready\" | \"deprecated\")"
]
);
}
#[test]
fn known_status_and_missing_art_return_no_warnings() {
let allocator = Allocator::new();
let ready = r#"<art title="Button" status="ready"></art>"#;
assert_eq!(
parse_art_status_warnings(&allocator, ready, "button.art.vue").as_slice(),
[] as [&str; 0]
);
assert_eq!(
parse_art_status_warnings(&allocator, "<div></div>", "button.art.vue").as_slice(),
[] as [&str; 0]
);
assert_eq!(
parse_art_status_warnings(&allocator, r#"<art title="Button" status="wip"></art>"#, "")
.as_slice(),
[
"anonymous.art.vue: unknown status \"wip\"; falling back to \"draft\" (expected \"draft\" | \"ready\" | \"deprecated\")"
]
);
}
}