# coding=utf-8 from __future__ import unicode_literals from nose.tools import istest, assert_equal from .testing import test_path import mammoth @istest def docx_containing_one_paragraph_is_converted_to_single_p_element(): with open(test_path("single-paragraph.docx"), "rb") as fileobj: result = mammoth.convert_to_html(fileobj=fileobj) assert_equal("
Walking on imported air
", result.value) assert_equal([], result.messages) @istest def can_read_xml_files_with_utf8_bom(): with open(test_path("utf8-bom.docx"), "rb") as fileobj: result = mammoth.convert_to_html(fileobj=fileobj) assert_equal("This XML has a byte order mark.
", result.value) assert_equal([], result.messages) @istest def empty_paragraphs_are_ignored_by_default(): with open(test_path("empty.docx"), "rb") as fileobj: result = mammoth.convert_to_html(fileobj=fileobj) assert_equal("", result.value) assert_equal([], result.messages) @istest def empty_paragraphs_are_preserved_if_ignore_empty_paragraphs_is_false(): with open(test_path("empty.docx"), "rb") as fileobj: result = mammoth.convert_to_html(fileobj=fileobj, ignore_empty_paragraphs=False) assert_equal("", result.value) assert_equal([], result.messages) @istest def inline_images_are_included_in_output(): with open(test_path("tiny-picture.docx"), "rb") as fileobj: result = mammoth.convert_to_html(fileobj=fileobj) assert_equal("""Above
" + "Top left | Top right |
Bottom left | Bottom right |
Below
") with open(test_path("tables.docx"), "rb") as fileobj: result = mammoth.convert_to_html(fileobj=fileobj) assert_equal([], result.messages) assert_equal(expected_html, result.value) @istest def footnotes_are_appended_to_text(): # TODO: don't duplicate footnotes with multiple references expected_html = ('' + '') with open(test_path("footnotes.docx"), "rb") as fileobj: result = mammoth.convert_to_html(fileobj=fileobj, id_prefix="doc-42") assert_equal([], result.messages) assert_equal(expected_html, result.value) @istest def endnotes_are_appended_to_text(): expected_html = ('' + '') with open(test_path("endnotes.docx"), "rb") as fileobj: result = mammoth.convert_to_html(fileobj=fileobj, id_prefix="doc-42") assert_equal([], result.messages) assert_equal(expected_html, result.value) @istest def text_boxes_are_read(): with open(test_path("text-box.docx"), "rb") as fileobj: result = mammoth.convert_to_html(fileobj=fileobj) assert_equal('Datum plane
', result.value) @istest def transform_document_is_applied_to_document_before_conversion(): def transform_document(document): document.children[0].style_id = "Heading1" return document with open(test_path("single-paragraph.docx"), "rb") as fileobj: result = mammoth.convert_to_html(fileobj=fileobj, transform_document=transform_document) assert_equal("