diff options
| -rw-r--r-- | mammoth/html_generation.py | 5 | ||||
| -rw-r--r-- | tests/html_generation_tests.py | 9 |
2 files changed, 13 insertions, 1 deletions
diff --git a/mammoth/html_generation.py b/mammoth/html_generation.py index 66f2719..a4d716e 100644 --- a/mammoth/html_generation.py +++ b/mammoth/html_generation.py @@ -74,7 +74,10 @@ def satisfy_html_path(generator, path): generator.end() for element in path.elements[first_unsatisfied_index:]: - generator.start(element.names[0]) + attributes = {} + if element.class_names: + attributes["class"] = " ".join(element.class_names) + generator.start(element.names[0], attributes=attributes) def _find_first_unsatisfied_index(generator, path): diff --git a/tests/html_generation_tests.py b/tests/html_generation_tests.py index 4322d69..c39f886 100644 --- a/tests/html_generation_tests.py +++ b/tests/html_generation_tests.py @@ -138,3 +138,12 @@ class SatisfyPathTests(object): satisfy_html_path(generator, path) generator.text("there") assert_equal('<blockquote><p>Hello</p><p>there', generator.html_string()) + + + @istest + def attributes_are_generated_when_satisfying_elements(self): + generator = HtmlGenerator() + path = html_paths.path([html_paths.element(["p"], class_names=["tip"])]) + satisfy_html_path(generator, path) + generator.text("Hello") + assert_equal('<p class="tip">Hello', generator.html_string()) |
