1
0
Fork 0
mirror of https://github.com/shlomif/PySolFC.git synced 2025-04-05 00:02:29 -04:00
PySolFC/tests/lib/pysol_tests/kpat_load_save.py
2019-05-31 19:33:02 +03:00

48 lines
1.5 KiB
Python

# Written by Shlomi Fish, under the MIT Expat License.
import unittest
from pysollib.kpat_load_save import KpatXmlEmitter
from six.moves import cStringIO
class MyTests(unittest.TestCase):
def test_emitter(self):
f = cStringIO()
e = KpatXmlEmitter(f)
self.assertTrue(e)
e.writeEmptyTag("foo", [("one", "val1"), ("two", "val2")])
self.assertEqual(
f.getvalue(),
"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"
+ "<foo one=\"val1\" two=\"val2\"/>\n")
f = cStringIO()
e = KpatXmlEmitter(f)
self.assertTrue(e)
e.writeStartTag("foo", [("one", "val1"), ("two", "val2")])
e.writeEmptyTag("flutter", [])
e.endTag()
self.assertEqual(
f.getvalue(),
"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"
+ "<foo one=\"val1\" two=\"val2\">\n"
+ "\t<flutter/>\n"
+ "</foo>\n")
f = cStringIO()
e = KpatXmlEmitter(f)
self.assertTrue(e)
e.writeStartTag("foo", [("one", "val1"), ("two", "val2")])
e.writeStartTag("rar", [("z", "zval"), ("a", "aval")])
e.writeEmptyTag("flutter", [])
e.endTag()
e.endTag()
self.assertEqual(
f.getvalue(),
"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"
+ "<foo one=\"val1\" two=\"val2\">\n"
+ "\t<rar z=\"zval\" a=\"aval\">\n"
+ "\t\t<flutter/>\n"
+ "\t</rar>\n"
+ "</foo>\n")