Exemple #1
0
 def assertSVG(self, geom, expected, **kwrds):
     """Helper function to check XML and debug SVG"""
     svg_elem = geom.svg(**kwrds)
     try:
         parse_xml_string(svg_elem)
     except:
         raise AssertionError('XML is not valid for SVG element: ' +
                              str(svg_elem))
     svg_doc = geom._repr_svg_()
     try:
         doc = parse_xml_string(svg_doc)
     except:
         raise AssertionError('XML is not valid for SVG document: ' +
                              str(svg_doc))
     svg_output_dir = None
     # svg_output_dir = '.'  # useful for debugging SVG files
     if svg_output_dir:
         fname = geom.type
         if geom.is_empty:
             fname += '_empty'
         if not geom.is_valid:
             fname += '_invalid'
         if kwrds:
             fname += '_' + \
                 ','.join(str(k) + '=' + str(kwrds[k]) for k in kwrds)
         svg_path = os.path.join(svg_output_dir, fname + '.svg')
         with open(svg_path, 'w') as fp:
             fp.write(doc.toprettyxml())
     self.assertEqual(svg_elem, expected)
Exemple #2
0
 def assertSVG(self, geom, expected, **kwrds):
     """Helper function to check XML and debug SVG"""
     svg_elem = geom.svg(**kwrds)
     try:
         parse_xml_string(svg_elem)
     except:
         raise AssertionError(
             'XML is not valid for SVG element: ' + str(svg_elem))
     svg_doc = geom._repr_svg_()
     try:
         doc = parse_xml_string(svg_doc)
     except:
         raise AssertionError(
             'XML is not valid for SVG doucment: ' + str(svg_doc))
     svg_output_dir = None
     # svg_output_dir = '.'  # useful for debugging SVG files
     if svg_output_dir:
         fname = geom.type
         if geom.is_empty:
             fname += '_empty'
         if not geom.is_valid:
             fname += '_invalid'
         if kwrds:
             fname += '_' + \
                 ','.join(str(k) + '=' + str(kwrds[k]) for k in kwrds)
         svg_path = os.path.join(svg_output_dir, fname + '.svg')
         with open(svg_path, 'w') as fp:
             fp.write(doc.toprettyxml())
     self.assertEqual(svg_elem, expected)
Exemple #3
0
 def slow_prettify(code):
     xml = parse_xml_string(code)
     utils.strip_minidom_whitespace(xml)
     xml.normalize()
     result = xml.toprettyxml(indent='  ')
     result = result.replace('<?xml version="1.0" ?>\n', '')
     return result.strip()
 def render(self, encoding='utf-8'):
     xml = self._strip_newlines(self._render_template())
     return parse_xml_string(xml).toprettyxml(
         indent='',
         newl='',
         encoding=encoding,
     )
Exemple #5
0
 def render(self, encoding='utf-8'):
     xml = self._strip_newlines(self._render_template())
     return parse_xml_string(xml).toprettyxml(
         indent='',
         newl='',
         encoding=encoding,
     )
            data = element.firstChild.data.encode().strip()
            data = base64.b64decode(data)
            pictures.append(dict(filename=filename, data=data))
        self.pictures_element = pictures_element    
            
        self.appearances = appearances
        self.works = works
        self.pictures = pictures

        
            
            
    def _get_title_and_desc(self, element):
        title_element = TitleElement('')
        title_element.reform(element.childNodes[0])
        desc_element = DescriptionElement('')
        desc_element.reform(element.childNodes[1])
        return title_element.get(), desc_element.get()
            
if __name__ == '__main__':
    from StringIO import StringIO
    g = GuestElement()
    xmlfile = StringIO()
    xmlfile.write(g.toxml())
    xmlfile.seek(0)
    parsed = parse_xml_string(g.toxml())
    #gp = GuestElementParser(parsed)
    
    pe = PictureElement('foo.gz', file('foo.gz').read())
    
 def toprettyxml(self):
     xml = parse_xml_string(self._render_template())
     return '\n'.join([
         l for l in xml.toprettyxml(indent=' ' * 2).split('\n')
         if l.strip()
     ])
Exemple #8
0
 def toprettyxml(self):
     xml = parse_xml_string(self._render_template())
     return '\n'.join([
         l for l in xml.toprettyxml(indent=' ' * 2).split('\n')
         if l.strip()
     ])