From 7c587440f0b3d073a6298490926f79129a650a0b Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Mon, 30 Dec 2024 10:14:55 +0000 Subject: Convert SDT checkboxes to checkbox inputs --- tests/docx/body_xml_tests.py | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) (limited to 'tests') diff --git a/tests/docx/body_xml_tests.py b/tests/docx/body_xml_tests.py index 8c1fdf0..8a8f40b 100644 --- a/tests/docx/body_xml_tests.py +++ b/tests/docx/body_xml_tests.py @@ -751,6 +751,43 @@ class CheckboxTests: is_run(children=is_sequence(is_checkbox(checked=True))), ))) + def test_structured_document_tag_checkbox_without_checked_is_not_checked(self): + element = xml_element("w:sdt", {}, [ + xml_element("w:sdtPr", {}, [ + xml_element("wordml:checkbox"), + ]), + ]) + + result = _read_and_get_document_xml_element(element) + + assert_that(result, is_checkbox(checked=False)) + + def test_structured_document_tag_checkbox_with_checked_0_is_not_checked(self): + element = xml_element("w:sdt", {}, [ + xml_element("w:sdtPr", {}, [ + xml_element("wordml:checkbox", {}, [ + xml_element("wordml:checked", {"wordml:val": "0"}), + ]), + ]), + ]) + + result = _read_and_get_document_xml_element(element) + + assert_that(result, is_checkbox(checked=False)) + + def test_structured_document_tag_checkbox_with_checked_1_is_checked(self): + element = xml_element("w:sdt", {}, [ + xml_element("w:sdtPr", {}, [ + xml_element("wordml:checkbox", {}, [ + xml_element("wordml:checked", {"wordml:val": "1"}), + ]), + ]), + ]) + + result = _read_and_get_document_xml_element(element) + + assert_that(result, is_checkbox(checked=True)) + def _complex_field_checkbox_paragraph(self, ff_data_children): return xml_element("w:p", {}, [ xml_element("w:r", {}, [ -- cgit v1.2.3