19 ('<p></p>', ''), |
19 ('<p></p>', ''), |
20 ] |
20 ] |
21 for text, expected in data: |
21 for text, expected in data: |
22 got = uilib.remove_html_tags(text) |
22 got = uilib.remove_html_tags(text) |
23 self.assertEquals(got, expected) |
23 self.assertEquals(got, expected) |
24 |
24 |
25 def test_fallback_safe_cut(self): |
25 def test_fallback_safe_cut(self): |
26 self.assertEquals(uilib.fallback_safe_cut(u'ab <a href="hello">cd</a>', 4), u'ab c...') |
26 self.assertEquals(uilib.fallback_safe_cut(u'ab <a href="hello">cd</a>', 4), u'ab c...') |
27 self.assertEquals(uilib.fallback_safe_cut(u'ab <a href="hello">cd</a>', 5), u'ab <a href="hello">cd</a>') |
27 self.assertEquals(uilib.fallback_safe_cut(u'ab <a href="hello">cd</a>', 5), u'ab <a href="hello">cd</a>') |
28 self.assertEquals(uilib.fallback_safe_cut(u'ab <a href="hello">&d</a>', 4), u'ab &...') |
28 self.assertEquals(uilib.fallback_safe_cut(u'ab <a href="hello">&d</a>', 4), u'ab &...') |
29 self.assertEquals(uilib.fallback_safe_cut(u'ab <a href="hello">&d</a> ef', 5), u'ab &d...') |
29 self.assertEquals(uilib.fallback_safe_cut(u'ab <a href="hello">&d</a> ef', 5), u'ab &d...') |
30 self.assertEquals(uilib.fallback_safe_cut(u'ab <a href="hello">ìd</a>', 4), u'ab ì...') |
30 self.assertEquals(uilib.fallback_safe_cut(u'ab <a href="hello">ìd</a>', 4), u'ab ì...') |
31 self.assertEquals(uilib.fallback_safe_cut(u'& <a href="hello">&d</a> ef', 4), u'& &d...') |
31 self.assertEquals(uilib.fallback_safe_cut(u'& <a href="hello">&d</a> ef', 4), u'& &d...') |
32 |
32 |
33 def test_lxml_safe_cut(self): |
33 def test_lxml_safe_cut(self): |
34 self.assertEquals(uilib.safe_cut(u'aaa<div>aaad</div> ef', 4), u'<p>aaa</p><div>a...</div>') |
34 self.assertEquals(uilib.safe_cut(u'aaa<div>aaad</div> ef', 4), u'<p>aaa</p><div>a...</div>') |
35 self.assertEquals(uilib.safe_cut(u'aaa<div>aaad</div> ef', 7), u'<p>aaa</p><div>aaad</div>...') |
35 self.assertEquals(uilib.safe_cut(u'aaa<div>aaad</div> ef', 7), u'<p>aaa</p><div>aaad</div>...') |
36 self.assertEquals(uilib.safe_cut(u'aaa<div>aaad</div>', 7), u'<p>aaa</p><div>aaad</div>') |
36 self.assertEquals(uilib.safe_cut(u'aaa<div>aaad</div>', 7), u'<p>aaa</p><div>aaad</div>') |
37 # Missing ellipsis due to space management but we don't care |
37 # Missing ellipsis due to space management but we don't care |
73 ] |
73 ] |
74 for text, expected in data: |
74 for text, expected in data: |
75 got = uilib.text_cut(text, 30) |
75 got = uilib.text_cut(text, 30) |
76 self.assertEquals(got, expected) |
76 self.assertEquals(got, expected) |
77 |
77 |
78 def test_ajax_replace_url(self): |
|
79 # NOTE: for the simplest use cases, we could use doctest |
|
80 arurl = uilib.ajax_replace_url |
|
81 self.assertEquals(arurl('foo', 'Person P'), |
|
82 "javascript: replacePageChunk('foo', 'Person%20P');") |
|
83 self.assertEquals(arurl('foo', 'Person P', 'oneline'), |
|
84 "javascript: replacePageChunk('foo', 'Person%20P', 'oneline');") |
|
85 self.assertEquals(arurl('foo', 'Person P', 'oneline', name='bar', age=12), |
|
86 'javascript: replacePageChunk(\'foo\', \'Person%20P\', \'oneline\', {"age": 12, "name": "bar"});') |
|
87 self.assertEquals(arurl('foo', 'Person P', name='bar', age=12), |
|
88 'javascript: replacePageChunk(\'foo\', \'Person%20P\', \'null\', {"age": 12, "name": "bar"});') |
|
89 |
|
90 tree = ('root', ( |
78 tree = ('root', ( |
91 ('child_1_1', ( |
79 ('child_1_1', ( |
92 ('child_2_1', ()), ('child_2_2', ( |
80 ('child_2_1', ()), ('child_2_2', ( |
93 ('child_3_1', ()), |
81 ('child_3_1', ()), |
94 ('child_3_2', ()), |
82 ('child_3_2', ()), |
114 def make_tree(tuple): |
102 def make_tree(tuple): |
115 n = Node(tuple[0]) |
103 n = Node(tuple[0]) |
116 for child in tuple[1]: |
104 for child in tuple[1]: |
117 n.append(make_tree(child)) |
105 n.append(make_tree(child)) |
118 return n |
106 return n |
119 |
107 |
120 class UIlibHTMLGenerationTC(TestCase): |
108 class UIlibHTMLGenerationTC(TestCase): |
121 """ a basic tree node, caracterised by an id""" |
109 """ a basic tree node, caracterised by an id""" |
122 def setUp(self): |
110 def setUp(self): |
123 """ called before each test from this class """ |
111 """ called before each test from this class """ |
124 self.o = make_tree(tree) |
112 self.o = make_tree(tree) |
125 |
113 |
126 def test_generated_html(self): |
114 def test_generated_html(self): |
127 s = uilib.render_HTML_tree(self.o, selected_node="child_2_2") |
115 s = uilib.render_HTML_tree(self.o, selected_node="child_2_2") |
128 self.assertTextEqual(s, generated_html) |
116 self.assertTextEqual(s, generated_html) |
129 |
117 |
130 |
118 |
131 if __name__ == '__main__': |
119 if __name__ == '__main__': |
132 unittest_main() |
120 unittest_main() |
133 |
121 |