aboutsummaryrefslogtreecommitdiff
path: root/tests/parser/driver.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'tests/parser/driver.cxx')
-rw-r--r--tests/parser/driver.cxx23
1 files changed, 23 insertions, 0 deletions
diff --git a/tests/parser/driver.cxx b/tests/parser/driver.cxx
index 3414c0c..a8230cd 100644
--- a/tests/parser/driver.cxx
+++ b/tests/parser/driver.cxx
@@ -7,6 +7,7 @@
#endif
#include <string>
+#include <vector>
#include <cassert>
#include <iostream>
#include <sstream>
@@ -389,4 +390,26 @@ main ()
{
// cerr << e.what () << endl;
}
+
+ // Test the iterator interface.
+ //
+ {
+ istringstream is ("<root><nested>X</nested></root>");
+ parser p (is, "iterator");
+
+ vector<parser::event_type> v;
+
+ for (parser::iterator i (p.begin ()); i != p.end (); ++i)
+ v.push_back (*i);
+
+ //for (parser::event_type e: p)
+ // v.push_back (e);
+
+ assert (v.size () == 5);
+ assert (v[0] == parser::start_element);
+ assert (v[1] == parser::start_element);
+ assert (v[2] == parser::characters);
+ assert (v[3] == parser::end_element);
+ assert (v[4] == parser::end_element);
+ }
}