diff options
Diffstat (limited to 'tests/docx/document_matchers.py')
| -rw-r--r-- | tests/docx/document_matchers.py | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/tests/docx/document_matchers.py b/tests/docx/document_matchers.py new file mode 100644 index 0000000..dd2276d --- /dev/null +++ b/tests/docx/document_matchers.py @@ -0,0 +1,28 @@ +from precisely import all_of, has_attrs, instance_of + +from mammoth import documents + + +def create_element_matcher(element_type): + def matcher(**kwargs): + return all_of( + instance_of(element_type), + has_attrs(**kwargs), + ) + + return matcher + + +is_paragraph = create_element_matcher(documents.Paragraph) +is_run = create_element_matcher(documents.Run) +is_hyperlink = create_element_matcher(documents.Hyperlink) + + +is_empty_run = is_run(children=[]) + + +def is_text(value): + return all_of( + instance_of(documents.Text), + has_attrs(value=value), + ) |
