From 93c52cf6be9633f97e903233db47648844407d2e Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Sat, 14 Dec 2013 15:32:30 +0000 Subject: Generate class attribute when satisfying HTML path --- mammoth/html_generation.py | 5 ++++- tests/html_generation_tests.py | 9 +++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) 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('

Hello

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('

Hello', generator.html_string()) -- cgit v1.2.3