helpers, disco: Add missing serialisation, and add a test.

Emmanuel Gil Peyrot created

Change summary

src/disco.rs  | 2 ++
src/macros.rs | 3 +++
2 files changed, 5 insertions(+)

Detailed changes

src/disco.rs 🔗

@@ -377,6 +377,8 @@ mod tests {
     fn test_answers_items_result() {
         let elem: Element = "<query xmlns='http://jabber.org/protocol/disco#items'><item jid='component'/><item jid='component2' node='test' name='A component'/></query>".parse().unwrap();
         let query = DiscoItemsResult::try_from(elem).unwrap();
+        let elem2 = Element::from(query);
+        let query = DiscoItemsResult::try_from(elem2).unwrap();
         assert_eq!(query.items.len(), 2);
         assert_eq!(query.items[0].jid, Jid::from_str("component").unwrap());
         assert_eq!(query.items[0].node, None);

src/macros.rs 🔗

@@ -340,6 +340,9 @@ macro_rules! generate_element_with_children {
                         $(
                         .attr($attr_name, elem.$attr)
                         )*
+                        $(
+                        .append(elem.$child_ident)
+                        )*
                         .build()
             }
         }