def run_has_style_id_and_name_read_from_run_properties_if_present(self): style_xml = xml_element("w:rStyle", {"w:val": "Heading1Char"}) styles = Styles({}, {"Heading1Char": Style(style_id="Heading1Char", name="Heading 1 Char")}) run = self._read_run_with_properties([style_xml], styles=styles) assert_equal("Heading1Char", run.style_id) assert_equal("Heading 1 Char", run.style_name)
def paragraph_has_style_id_and_name_read_from_paragraph_properties_if_present(self): style_xml = xml_element("w:pStyle", {"w:val": "Heading1"}) properties_xml = xml_element("w:pPr", {}, [style_xml]) paragraph_xml = xml_element("w:p", {}, [properties_xml]) styles = Styles({"Heading1": Style(style_id="Heading1", name="Heading 1")}, {}) paragraph = _read_and_get_document_xml_element(paragraph_xml, styles=styles) assert_equal("Heading1", paragraph.style_id) assert_equal("Heading 1", paragraph.style_name)
def run_has_style_id_and_name_read_from_run_properties_if_present(self): style_xml = xml_element("w:rStyle", {"w:val": "Heading1Char"}) styles = Styles.create( character_styles={"Heading1Char": Style(style_id="Heading1Char", name="Heading 1 Char")}, ) run = self._read_run_with_properties([style_xml], styles=styles) assert_equal("Heading1Char", run.style_id) assert_equal("Heading 1 Char", run.style_name)
def table_has_style_id_and_name_read_from_paragraph_properties_if_present(self): style_xml = xml_element("w:tblStyle", {"w:val": "TableNormal"}) properties_xml = xml_element("w:tblPr", {}, [style_xml]) table_xml = xml_element("w:tbl", {}, [properties_xml]) styles = Styles.create( table_styles={"TableNormal": Style(style_id="TableNormal", name="Normal Table")}, ) paragraph = _read_and_get_document_xml_element(table_xml, styles=styles) assert_equal("TableNormal", paragraph.style_id) assert_equal("Normal Table", paragraph.style_name)
def warning_is_emitted_when_paragraph_style_cannot_be_found(self): style_xml = xml_element("w:pStyle", {"w:val": "Heading1"}) properties_xml = xml_element("w:pPr", {}, [style_xml]) paragraph_xml = xml_element("w:p", {}, [properties_xml]) styles = Styles({}, {}) result = _read_document_xml_element(paragraph_xml, styles=styles) paragraph = result.value assert_equal("Heading1", paragraph.style_id) assert_equal(None, paragraph.style_name) assert_equal([results.warning("Paragraph style with ID Heading1 was referenced but not defined in the document")], result.messages)
def warning_is_emitted_when_run_style_cannot_be_found(self): style_xml = xml_element("w:rStyle", {"w:val": "Heading1Char"}) properties_xml = xml_element("w:rPr", {}, [style_xml]) run_xml = xml_element("w:r", {}, [properties_xml]) styles = Styles({}, {}) result = _read_document_xml_element(run_xml, styles=styles) run = result.value assert_equal("Heading1Char", run.style_id) assert_equal(None, run.style_name) assert_equal([results.warning("Run style with ID Heading1Char was referenced but not defined in the document")], result.messages)
def paragraph_has_style_id_and_name_read_from_paragraph_properties_if_present(self): style_xml = xml_element("w:pStyle", {"w:val": "Heading1"}) properties_xml = xml_element("w:pPr", {}, [style_xml]) paragraph_xml = xml_element("w:p", {}, [properties_xml]) styles = Styles.create( paragraph_styles={"Heading1": Style(style_id="Heading1", name="Heading 1")}, ) paragraph = _read_and_get_document_xml_element(paragraph_xml, styles=styles) assert_equal("Heading1", paragraph.style_id) assert_equal("Heading 1", paragraph.style_name)
def when_abstract_num_has_num_style_link_then_style_is_used_to_find_num(): numbering = _read_numbering_xml_element( xml_element("w:numbering", {}, [ xml_element("w:abstractNum", {"w:abstractNumId": "100"}, [ xml_element("w:lvl", {"w:ilvl": "0"}, [ xml_element("w:numFmt", {"w:val": "decimal"}), ]), ]), xml_element("w:abstractNum", {"w:abstractNumId": "101"}, [ xml_element("w:numStyleLink", {"w:val": "List1"}), ]), xml_element("w:num", {"w:numId": "200"}, [ xml_element("w:abstractNumId", {"w:val": "100"}), ]), xml_element("w:num", {"w:numId": "201"}, [ xml_element("w:abstractNumId", {"w:val": "101"}), ]) ]), styles=Styles.create( numbering_styles={"List1": NumberingStyle(num_id="200")}), ) assert_equal(True, numbering.find_level("201", "0").is_ordered)