test: add test cases for both #15 and #16

This commit is contained in:
PoiScript 2020-05-06 11:36:40 +08:00
parent d13dcb91c9
commit d2893664c6

26
tests/issue_15_16.rs Normal file
View file

@ -0,0 +1,26 @@
use orgize::Org;
#[test]
fn bad_headline_tags() {
contains_no_tag(Org::parse("* a ::"));
contains_no_tag(Org::parse("* a :(:"));
contains_one_tag(Org::parse("* a \t:_:"), "_");
contains_one_tag(Org::parse("* a \t :@:"), "@");
contains_one_tag(Org::parse("* a :#:"), "#");
contains_one_tag(Org::parse("* a\t :%:"), "%");
contains_one_tag(Org::parse("* a :余:"), "");
}
fn contains_no_tag(org: Org) {
assert!(org.headlines().next().unwrap().title(&org).tags.is_empty());
}
fn contains_one_tag(org: Org, tag: &str) {
assert_eq!(vec![tag], org.headlines().next().unwrap().title(&org).tags);
}