def testPartXML(self): part1 = Document('testdocs/test.docx').part_by_name['/word/document.xml'] self.assertEquals( list(part1.xml().getroot().iterchildren())[0].tag, '{http://schemas.openxmlformats.org/wordprocessingml/2006/main}body') self.assertEquals(part1.xpath('//@w:val', part1.xml().getroot().nsmap)[2], 'Funotenzeichen') part2 = Document('testdocs/test.docx').part_by_name['/[Content_Types].xml'] xmlns = {'ct': 'http://schemas.openxmlformats.org/package/2006/content-types'} self.assertEqual(part2.xpath('/ct:Types/ct:Override/@PartName', xmlns)[0], '/word/document.xml') part3 = Document('testdocs/testutf16.docx').part_by_name['/word/document.xml'] self.assertEquals( part3.xml().xpath('//*[local-name() = "lang"]/@*[local-name() = "val"]')[0], 'en-US') part4 = Document('testdocs/testascii.docx').part_by_name['/word/document.xml'] self.assertEquals( part4.xml().xpath('//*[local-name() = "lang"]/@*[local-name() = "val"]')[0], 'en-US') doc5 = Document('testdocs/macros-non-standard.xlsm') self.assertEqual(doc5.features.macros[0].name, '/xl/new_name.bin') part6 = Document('testdocs/non-standard-namespace.docx').part_by_name['/word/document.xml'] self.assertEquals(part1.xpath('//@fake:val', part6.xml().getroot().nsmap)[2], 'Funotenzeichen')
def testPartXML(self): part1 = Document( 'testdocs/test.docx').part_by_name['/word/document.xml'] self.assertEquals( list(part1.xml().getroot().iterchildren())[0].tag, '{http://schemas.openxmlformats.org/wordprocessingml/2006/main}body' ) self.assertEquals( part1.xpath('//@w:val', part1.xml().getroot().nsmap)[2], 'Funotenzeichen') part2 = Document( 'testdocs/test.docx').part_by_name['/[Content_Types].xml'] xmlns = { 'ct': 'http://schemas.openxmlformats.org/package/2006/content-types' } self.assertEqual( part2.xpath('/ct:Types/ct:Override/@PartName', xmlns)[0], '/word/document.xml') part3 = Document( 'testdocs/testutf16.docx').part_by_name['/word/document.xml'] self.assertEquals( part3.xml().xpath( '//*[local-name() = "lang"]/@*[local-name() = "val"]')[0], 'en-US') part4 = Document( 'testdocs/testascii.docx').part_by_name['/word/document.xml'] self.assertEquals( part4.xml().xpath( '//*[local-name() = "lang"]/@*[local-name() = "val"]')[0], 'en-US') doc5 = Document('testdocs/macros-non-standard.xlsm') self.assertEqual(doc5.features.macros[0].name, '/xl/new_name.bin') part6 = Document('testdocs/non-standard-namespace.docx' ).part_by_name['/word/document.xml'] self.assertEquals( part1.xpath('//@fake:val', part6.xml().getroot().nsmap)[2], 'Funotenzeichen')