Issue #1470548: Do not buffer XMLGenerator output.
Add test for fragment producing with XMLGenerator.
diff --git a/Lib/test/test_sax.py b/Lib/test/test_sax.py
index 825c16a..3a20eac 100644
--- a/Lib/test/test_sax.py
+++ b/Lib/test/test_sax.py
@@ -403,6 +403,21 @@
         func(result)
         self.assertFalse(result.closed)
 
+    def test_xmlgen_fragment(self):
+        result = self.ioclass()
+        gen = XMLGenerator(result)
+
+        # Don't call gen.startDocument()
+        gen.startElement("foo", {"a": "1.0"})
+        gen.characters("Hello")
+        gen.endElement("foo")
+        gen.startElement("bar", {"b": "2.0"})
+        gen.endElement("bar")
+        # Don't call gen.endDocument()
+
+        self.assertEqual(result.getvalue(),
+                         '<foo a="1.0">Hello</foo><bar b="2.0"></bar>')
+
 class StringXmlgenTest(XmlgenTest, unittest.TestCase):
     ioclass = StringIO