aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mammoth/conversion.py4
-rw-r--r--tests/conversion_tests.py11
2 files changed, 12 insertions, 3 deletions
diff --git a/mammoth/conversion.py b/mammoth/conversion.py
index 78994e9..94ffeae 100644
--- a/mammoth/conversion.py
+++ b/mammoth/conversion.py
@@ -112,7 +112,7 @@ class _DocumentConverter(documents.ElementVisitor):
if run.is_bold:
self._convert_run_property(run_generator, "bold", default="strong")
if run.is_italic:
- run_generator.start("em")
+ self._convert_run_property(run_generator, "italic", default="em")
if run.vertical_alignment == documents.VerticalAlignment.superscript:
run_generator.start("sup")
if run.vertical_alignment == documents.VerticalAlignment.subscript:
@@ -257,7 +257,7 @@ class _DocumentConverter(documents.ElementVisitor):
def _document_matcher_matches(matcher, element, element_type):
- if matcher.element_type in ["underline", "strikethrough", "bold"]:
+ if matcher.element_type in ["underline", "strikethrough", "bold", "italic"]:
return matcher.element_type == element_type
else:
return (
diff --git a/tests/conversion_tests.py b/tests/conversion_tests.py
index 78530a9..8f0a696 100644
--- a/tests/conversion_tests.py
+++ b/tests/conversion_tests.py
@@ -165,7 +165,7 @@ def bold_runs_can_be_configured_with_style_mapping():
@istest
-def italic_runs_are_wrapped_in_emphasis_tags():
+def italic_runs_are_wrapped_in_emphasis_tags_by_default():
result = convert_document_element_to_html(
documents.run(children=[documents.text("Hello")], is_italic=True),
)
@@ -173,6 +173,15 @@ def italic_runs_are_wrapped_in_emphasis_tags():
@istest
+def italic_runs_can_be_configured_with_style_mapping():
+ result = convert_document_element_to_html(
+ documents.run(children=[documents.text("Hello")], is_italic=True),
+ style_map=[_style_mapping("i => i")]
+ )
+ assert_equal("<i>Hello</i>", result.value)
+
+
+@istest
def underline_runs_are_ignored_by_default():
result = convert_document_element_to_html(
documents.run(children=[documents.text("Hello")], is_underline=True),