diff --git a/minidom-rs/src/element.rs b/minidom-rs/src/element.rs index 639218ec4c651ab6ac9fa214e1fa2563cca56cec..35f6e86d3b57e8e0c4069d67c1b80da987e2d6b7 100644 --- a/minidom-rs/src/element.rs +++ b/minidom-rs/src/element.rs @@ -207,8 +207,7 @@ impl Element { ) } - /// Returns a reference to the name of this element. - // TODO: rename local_name + /// Returns a reference to the local name of this element (that is, without a possible prefix). pub fn name(&self) -> &str { &self.name } @@ -1079,6 +1078,18 @@ mod tests { assert_eq!(elem.unwrap(), elem2); } + #[test] + fn test_from_reader_split_prefix() { + let xml = ""; + let mut reader = EventReader::from_str(xml); + let elem = Element::from_reader(&mut reader).unwrap(); + + assert_eq!(elem.name(), String::from("bar")); + assert_eq!(elem.ns(), String::from("ns1")); + // Ensure the prefix is properly added to the store + assert_eq!(elem.prefixes.get(&String::from("ns1")), Some(Some(String::from("foo")))); + } + #[test] fn parses_spectest_xml() { // From: https://gitlab.com/lumi/minidom-rs/issues/8