summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@suse.cz>2012-11-25 11:59:55 +0100
committerMiklos Vajna <vmiklos@suse.cz>2012-11-25 12:09:46 +0100
commite9b96b012a7ab20446a40c190240a00986ee8e10 (patch)
tree03fa25e254b150c0f9ef41f3ffc128d62c370457 /test
parent291073ea00747b9b44890ca297626d1f7042d175 (diff)
add some initial real test for doc
Diffstat (limited to 'test')
-rw-r--r--test/doc/charprops.docbin0 -> 22016 bytes
-rw-r--r--test/doc/charprops.rtf (renamed from test/charprops.rtf)0
-rwxr-xr-xtest/doc/test.py46
3 files changed, 46 insertions, 0 deletions
diff --git a/test/doc/charprops.doc b/test/doc/charprops.doc
new file mode 100644
index 0000000..1c2b5d8
--- /dev/null
+++ b/test/doc/charprops.doc
Binary files differ
diff --git a/test/charprops.rtf b/test/doc/charprops.rtf
index d0a2a3a..d0a2a3a 100644
--- a/test/charprops.rtf
+++ b/test/doc/charprops.rtf
diff --git a/test/doc/test.py b/test/doc/test.py
new file mode 100755
index 0000000..52874cc
--- /dev/null
+++ b/test/doc/test.py
@@ -0,0 +1,46 @@
+#!/usr/bin/env python
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+import sys
+sys.path.append(sys.path[0]+"/../..")
+sys.path.append(sys.path[0]+"/../../src")
+doc_dumper = __import__('doc-dump')
+from xml.etree import ElementTree
+import unittest
+import os
+
+class Test(unittest.TestCase):
+ def dump(self, name):
+ try:
+ os.unlink("%s.doc.xml" % name)
+ except OSError:
+ pass
+ sock = open("%s.doc.xml" % name, "w")
+ saved = sys.stdout
+ sys.stdout = sock
+ doc_dumper.main(["doc-dumper", "%s.doc" % name])
+ sys.stdout = saved
+ sock.close()
+ tree = ElementTree.parse('%s.doc.xml' % name)
+ return tree.getroot()
+
+ def test_charprops(self):
+ root = self.dump('charprops')
+
+ runs = root.findall('./stream[@name="WordDocument"]/fib/fibRgFcLcbBlob/lcbPlcfBteChpx/plcBteChpx/aFC/aPnBteChpx/chpxFkp/rgfc')
+ self.assertEqual(2, len(runs))
+
+ self.assertEqual('Hello ', runs[0].findall('./transformed')[0].attrib['value'])
+ self.assertEqual(0, len(runs[0].findall("./chpx/prl/sprm[@name='sprmCFBold']")))
+
+ self.assertEqual('world!\\x0D', runs[1].findall('./transformed')[0].attrib['value'])
+ self.assertEqual(1, len(runs[1].findall("./chpx/prl/sprm[@name='sprmCFBold']")))
+
+if __name__ == '__main__':
+ unittest.main()
+
+# vim:set filetype=python shiftwidth=4 softtabstop=4 expandtab: