aboutsummaryrefslogtreecommitdiff
path: root/tests/html_generation_tests.py
blob: c637798e50d64a80409b0359302f388fe05b3f96 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
from nose.tools import istest, assert_equal

from mammoth.html_generation import HtmlGenerator


@istest
def generates_empty_string_when_newly_created():
    generator = HtmlGenerator()
    assert_equal("", generator.html_string())


@istest
def html_escapes_text():
    generator = HtmlGenerator()
    generator.text("<")
    assert_equal("&lt;", generator.html_string())


@istest
def self_closing_tag_is_self_closing():
    generator = HtmlGenerator()
    generator.self_closing("br")
    assert_equal("<br />", generator.html_string())


@istest
def all_elements_are_closed_by_end_all():
    generator = HtmlGenerator()
    generator.start("p")
    generator.start("span")
    generator.text("Hello!")
    generator.end_all()
    assert_equal("<p><span>Hello!</span></p>", generator.html_string())


@istest
def elements_with_no_text_are_not_generator():
    generator = HtmlGenerator()
    generator.start("p")
    generator.start("span")
    generator.end_all()
    assert_equal("", generator.html_string())
    

@istest
def elements_with_empty_string_text_are_not_generator():
    generator = HtmlGenerator()
    generator.start("p")
    generator.start("span")
    generator.text("")
    generator.end_all()
    assert_equal("", generator.html_string())
    

@istest
def self_closing_tag_can_have_attributes():
    generator = HtmlGenerator()
    generator.self_closing("br", {"data-blah": "42"})
    assert_equal('<br data-blah="42" />', generator.html_string())