def test_08(self): """TestXmlWrite.test_08(): raise during write.""" myF = io.StringIO() try: with XmlWrite.XmlStream(myF) as xS: with XmlWrite.Element(xS, 'Root', {'version': '12.0'}): self.assertRaises(XmlWrite.ExceptionXmlEndElement, xS.endElement, 'NotRoot') with XmlWrite.Element(xS, 'E', {'attr_1': '1'}): xS._elemStk.pop() xS._elemStk.append('F') raise Exception('Some exception') except Exception as e: print(e) else: print('No exception raised') # print() # print(myF.getvalue()) self.assertEqual( myF.getvalue(), """<?xml version='1.0' encoding="utf-8"?> <Root version="12.0"> <E attr_1="1" /> </Root> """)
def test_06(self): """TestXmlWrite.test_06(): encoded text in 'latin-1'.""" myF = io.StringIO() with XmlWrite.XmlStream(myF, 'latin-1') as xS: with XmlWrite.Element(xS, 'Root'): with XmlWrite.Element(xS, 'A'): xS.characters("""<&>"'""")
def test_04(self): """TestXmlWrite.test_04(): raise on endElement when empty.""" myF = io.StringIO() with XmlWrite.XmlStream(myF) as xS: pass #print #print myF.getvalue() self.assertRaises(XmlWrite.ExceptionXmlEndElement, xS.endElement, '')
def test_00(self): """TestXmlWrite.test_00(): construction.""" myF = io.StringIO() with XmlWrite.XmlStream(myF): pass #print #print myF.getvalue() self.assertEqual(myF.getvalue(), """<?xml version='1.0' encoding="utf-8"?>\n""")
def test_09(self): """TestXmlWrite.test_09(): literal.""" myF = io.StringIO() with XmlWrite.XmlStream(myF) as xS: with XmlWrite.Element(xS, 'Root', {'version': '12.0'}): xS.literal(u'literal text') # print() # print(myF.getvalue()) self.assertEqual( myF.getvalue(), """<?xml version='1.0' encoding="utf-8"?> <Root version="12.0">literal text</Root> """)
def test_07(self): """TestXmlWrite.test_07(): comments.""" myF = io.StringIO() with XmlWrite.XmlStream(myF) as xS: with XmlWrite.Element(xS, 'Root', {'version': '12.0'}): xS.comment(u' a comment ') #print #print myF.getvalue() self.assertEqual( myF.getvalue(), """<?xml version='1.0' encoding="utf-8"?> <Root version="12.0"><!-- a comment --> </Root> """)
def test_03(self): """TestXmlWrite.test_03(): processing instruction.""" myF = io.StringIO() with XmlWrite.XmlStream(myF) as xS: with XmlWrite.Element(xS, 'Root', {'version': '12.0'}): with XmlWrite.Element(xS, 'A', {'attr_1': '1'}): xS.pI('Do <&> this') #print #print myF.getvalue() self.assertEqual( myF.getvalue(), """<?xml version='1.0' encoding="utf-8"?> <Root version="12.0"> <A attr_1="1"><?Do <&> this?></A> </Root> """)
def test_02(self): """TestXmlWrite.test_02(): mixed content.""" myF = io.StringIO() with XmlWrite.XmlStream(myF) as xS: with XmlWrite.Element(xS, 'Root', {'version': '12.0'}): with XmlWrite.Element(xS, 'A', {'attr_1': '1'}): xS.characters(u'<&>') #print #print myF.getvalue() self.assertEqual( myF.getvalue(), """<?xml version='1.0' encoding="utf-8"?> <Root version="12.0"> <A attr_1="1"><&></A> </Root> """)
def test_01(self): """TestXmlWrite.test_01(): simple elements.""" myF = io.StringIO() with XmlWrite.XmlStream(myF) as xS: with XmlWrite.Element(xS, 'Root', {'version': '12.0'}): with XmlWrite.Element(xS, 'A', {'attr_1': '1'}): pass #print #print myF.getvalue() self.assertEqual( myF.getvalue(), """<?xml version='1.0' encoding="utf-8"?> <Root version="12.0"> <A attr_1="1" /> </Root> """)
def test_05(self): """TestXmlWrite.test_05(): raise on endElement missmatch.""" myF = io.StringIO() with XmlWrite.XmlStream(myF) as xS: with XmlWrite.Element(xS, 'Root', {'version': '12.0'}): self.assertRaises(XmlWrite.ExceptionXmlEndElement, xS.endElement, 'NotRoot') with XmlWrite.Element(xS, 'A', {'attr_1': '1'}): self.assertRaises(XmlWrite.ExceptionXmlEndElement, xS.endElement, 'NotA') #print #print myF.getvalue() self.assertEqual( myF.getvalue(), """<?xml version='1.0' encoding="utf-8"?> <Root version="12.0"> <A attr_1="1" /> </Root> """)
def writeToFileObj(self, theFileObj): """Root level call to plot to a file object. The SVG stream is created here.""" with XmlWrite.XmlStream(theFileObj) as myS: self.writeToSVGStream(myS)