示例#1
0
 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)
示例#2
0
 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)
示例#4
0
    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)
示例#5
0
 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)
示例#6
0
 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 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 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)