From 49d046acf05be128d404a419ecde05091efa30c1 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Fri, 13 Dec 2013 17:43:42 +0000 Subject: Support parsing unordered list document matcher --- mammoth/style_reader/document_matcher_reader.py | 8 +++++--- tests/style_reader_tests.py | 8 ++++++++ 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/mammoth/style_reader/document_matcher_reader.py b/mammoth/style_reader/document_matcher_reader.py index 837da51..7fc8bcb 100644 --- a/mammoth/style_reader/document_matcher_reader.py +++ b/mammoth/style_reader/document_matcher_reader.py @@ -33,8 +33,8 @@ def _read_style_node(style_node): def _read_list_node(list_node): if list_node.children: return documents.NumberingLevel( - int(list_node.children[0].children[1].text), - is_ordered=True, + int(list_node.children[0].children[3].text), + is_ordered=list_node.children[0].children[1].text == "ordered-list", ) else: return None @@ -51,6 +51,8 @@ style_name = "." style_identifier style_identifier = ~"[A-Z0-9]*"i -list = ":ordered-list(" ~"[0-9]+" ")" +list = ":" list_type "(" ~"[0-9]+" ")" + +list_type = "ordered-list" / "unordered-list" """) diff --git a/tests/style_reader_tests.py b/tests/style_reader_tests.py index b1afdb7..971cfac 100644 --- a/tests/style_reader_tests.py +++ b/tests/style_reader_tests.py @@ -87,6 +87,14 @@ class ReadDocumentMatcherTests(object): ) + @istest + def reads_paragraph_unordered_list(self): + assert_equal( + document_matchers.paragraph(numbering=documents.NumberingLevel(2, is_ordered=False)), + read_document_matcher("p:unordered-list(2)") + ) + + @istest def reads_plain_run(self): assert_equal( -- cgit v1.2.3