From 899728d08993676b01e722a28f60efb2d076534d Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Tue, 1 Dec 2009 11:05:10 +0200 Subject: Make the list type a container for its elements --- tests/cxx/tree/containment/driver.cxx | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) (limited to 'tests/cxx/tree/containment/driver.cxx') diff --git a/tests/cxx/tree/containment/driver.cxx b/tests/cxx/tree/containment/driver.cxx index bd9aa24..62e1a8c 100644 --- a/tests/cxx/tree/containment/driver.cxx +++ b/tests/cxx/tree/containment/driver.cxx @@ -74,4 +74,39 @@ main () i.ref ("bar"); assert (i.ref ()->get () == p); } + + // IDREF lists + // + { + id i1 ("a"), i2 ("b"); + + auto_ptr ic (new ids); + ic->id ().push_back (i1); + ic->id ().push_back (i2); + + auto_ptr r1 (new xml_schema::idrefs); + r1->push_back (xml_schema::idref ("a")); + r1->push_back (xml_schema::idref ("b")); + + auto_ptr r2 (new idref_list); + r2->push_back (xml_schema::idref ("a")); + r2->push_back (xml_schema::idref ("b")); + + auto_ptr rc1 (new idrefs1); + auto_ptr rc2 (new idrefs2); + + rc1->idrefs (r1); + rc2->idrefs (r2); + + model m; + m.ids (ic); + m.idrefs1 (rc1); + m.idrefs2 (rc2); + + assert (m.idrefs1 ().idrefs ()[0].get () != 0); + assert (m.idrefs1 ().idrefs ()[1].get () != 0); + + assert (m.idrefs2 ().idrefs ()[0].get () != 0); + assert (m.idrefs2 ().idrefs ()[1].get () != 0); + } } -- cgit v1.1