def assertEqualLineByLine(self, expected_xml, element): """ Apply assertEqual() to each line of *expected_xml* and corresponding line of XML derived from *element*. """ actual_xml = oxml_tostring(element, pretty_print=True) actual_xml_lines = actual_xml.split('\n') expected_xml_lines = expected_xml.split('\n') for idx, line in enumerate(actual_xml_lines): msg = ("\n\nexpected:\n\n%s'\nbut got\n\n%s'" % (expected_xml, actual_xml)) self.assertEqual(line, expected_xml_lines[idx], msg)
def _assert_equal_line_by_line(testcase, expected_xml, element): """ Apply testcase.assertEqual() to each line of *expected_xml* and corresponding line of XML derived from *element*. """ actual_xml = oxml_tostring(element, encoding='UTF-8', pretty_print=True, standalone=True) actual_xml_lines = actual_xml.split('\n') expected_xml_lines = expected_xml.split('\n') for idx, line in enumerate(actual_xml_lines): msg = ("\n\nexpected:\n\n%s'\nbut got\n\n%s'" % (expected_xml, actual_xml)) testcase.assertEqual(line, expected_xml_lines[idx], msg)
def test__element_minimal_sld_on_construction(self): """_Slide._element is minimal sld on construction""" # setup ------------------------ path = os.path.join(thisdir, 'test_files/minimal_slide.xml') # exercise --------------------- elm = self.sld._element # verify ----------------------- with open(path, 'r') as f: expected = f.read() actual = prettify_nsdecls( oxml_tostring(elm, encoding='UTF-8', pretty_print=True, standalone=True)) msg = "\nexpected:\n\n'%s'\n\nbut got:\n\n'%s'" % (expected, actual) self.assertEqual(expected, actual, msg)
def _blob(self): """ Default is to return unchanged _load_blob. Dynamic parts will override. Raises |ValueError| if _load_blob is None. """ if self.partname.endswith('.xml'): assert self._element is not None, '_BasePart._blob is undefined '\ 'for xml parts when part.__element is None' xml = oxml_tostring(self._element, encoding='UTF-8', pretty_print=True, standalone=True) return xml # default for binary parts is to return _load_blob unchanged assert self._load_blob, "_BasePart._blob called on part with no "\ "_load_blob; perhaps _blob not overridden by sub-class?" return self._load_blob
def test__load_sets__element_for_xml_part(self): """_BasePart._load() sets _element for xml part""" # setup ------------------------ pkgpart = Mock(name='pptx.packaging.Part') pkgpart.partname = '/ppt/presentation.xml' pkgpart.blob = '<root><elm1 attr="spam"/></root>' pkgpart.relationships = [] part_dict = {} part = self.basepart._load(pkgpart, part_dict) # exercise --------------------- elm = part._element # verify ----------------------- expected = '<root><elm1 attr="spam"/></root>' actual = oxml_tostring(elm) msg = "expected '%s', got '%s'" % (expected, actual) self.assertEqual(expected, actual, msg)
def test___minimal_element_xml(self): """_Slide.__minimal_element generates correct XML""" # setup ------------------------ path = os.path.join(thisdir, 'test_files/minimal_slide.xml') # exercise --------------------- sld = self.sld._Slide__minimal_element # verify ----------------------- with open(path, 'r') as f: expected_xml = f.read() sld_xml = prettify_nsdecls( oxml_tostring(sld, encoding='UTF-8', pretty_print=True, standalone=True)) sld_xml_lines = sld_xml.split('\n') expected_xml_lines = expected_xml.split('\n') for idx, line in enumerate(sld_xml_lines): # msg = '\n\n%s' % sld_xml msg = "expected:\n%s\n, got\n%s" % (expected_xml, sld_xml) self.assertEqual(line, expected_xml_lines[idx], msg)