diff --git a/src/validate.rs b/src/validate.rs index 1b47bef..535b268 100644 --- a/src/validate.rs +++ b/src/validate.rs @@ -188,11 +188,13 @@ impl Org<'_> { | Element::Italic | Element::Underline | Element::Strike - | Element::DynBlock(_) - | Element::ListItem(_) => { + | Element::DynBlock(_) => { expect_children!(node_id); } - Element::Drawer(_) | Element::TableCell(_) | Element::Table(_) => (), + Element::ListItem(_) + | Element::Drawer(_) + | Element::TableCell(_) + | Element::Table(_) => (), } } errors diff --git a/tests/issue_11.rs b/tests/issue_11.rs new file mode 100644 index 0000000..d22e72b --- /dev/null +++ b/tests/issue_11.rs @@ -0,0 +1,21 @@ +use orgize::Org; + +#[test] +fn can_handle_empty_list_item() { + let cases = &[ + "0. ", + "* \n0. ", + " * ", + " 0. ", + "\t* ", + "- ", + "- hello\n- ", + "- \n- hello", + "- hello\n- \n- world", + "* world\n- ", + ]; + + for case in cases { + let _ = Org::parse(case); + } +}