parent
f363ea1ae8
commit
60d8425470
@ -103,6 +103,14 @@ impl PageFrontMatter {
|
|||||||
|
|
||||||
f.date_to_datetime();
|
f.date_to_datetime();
|
||||||
|
|
||||||
|
for (_, terms) in &f.taxonomies {
|
||||||
|
for term in terms {
|
||||||
|
if term.trim().is_empty() {
|
||||||
|
bail!("A taxonomy term cannot be an empty string");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if let Some(ref date) = f.date {
|
if let Some(ref date) = f.date {
|
||||||
if f.datetime.is_none() {
|
if f.datetime.is_none() {
|
||||||
bail!("`date` could not be parsed: {}.", date);
|
bail!("`date` could not be parsed: {}.", date);
|
||||||
@ -474,4 +482,24 @@ taxonomies:
|
|||||||
assert_eq!(res2.taxonomies["categories"], vec!["Dev"]);
|
assert_eq!(res2.taxonomies["categories"], vec!["Dev"]);
|
||||||
assert_eq!(res2.taxonomies["tags"], vec!["Rust", "JavaScript"]);
|
assert_eq!(res2.taxonomies["tags"], vec!["Rust", "JavaScript"]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test_case(&RawFrontMatter::Toml(r#"
|
||||||
|
title = "Hello World"
|
||||||
|
|
||||||
|
[taxonomies]
|
||||||
|
tags = [""]
|
||||||
|
"#); "toml")]
|
||||||
|
#[test_case(&RawFrontMatter::Yaml(r#"
|
||||||
|
title: Hello World
|
||||||
|
|
||||||
|
taxonomies:
|
||||||
|
tags:
|
||||||
|
-
|
||||||
|
"#); "yaml")]
|
||||||
|
fn errors_on_empty_taxonomy_term(content: &RawFrontMatter) {
|
||||||
|
// https://github.com/getzola/zola/issues/2085
|
||||||
|
let res = PageFrontMatter::parse(content);
|
||||||
|
println!("{:?}", res);
|
||||||
|
assert!(res.is_err());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user