Code

removed Log
[roundup.git] / test / test_template_parser.py
1 # $Id: test_template_parser.py,v 1.2 2002-09-10 00:19:55 richard Exp $
3 import unittest
4 from roundup import template_parser
6 class TemplateParserTestCase(unittest.TestCase):
7    def testParser(self):
8         parser = template_parser.RoundupTemplate()
9         s = '''
10 <table border=0 cellspacing=5 cellpadding=0>
11  <tr>
12   <td bgcolor="ffffea">
13    <property name="prop1">
14     <require permission="perm1">
15      <display call="field('prop1')">
16     <else>
17      <display call="plain('prop1')">
18     </require>
19    </property>
20   </td>
21  </tr>
22 </table>
24 <table border=0 cellspacing=5 cellpadding=0>
25  <property name="prop2">
26   <tr>
27    <td class="form-label">Prop2:</td>
28    <td class="form-text">
29     <require permission="perm2">
30      <display call="field('prop2')">
31     <else>
32      <display call="plain('prop2')">
33     </require>
34    </td>
35   </tr>
36  </property>
37 </table>'''
38         parser.feed(s)
39         self.assertEqual(template_parser.display(parser.structure),
40 '\n<table border="0" cellspacing="5" cellpadding="0">\n <tr>\n  <td bgcolor="ffffea">\n   PROPERTY: [(\'name\', \'prop1\')] \n     TEST: [(\'permission\', \'perm1\')]\n OK...  \n       DISPLAY: [(\'call\', "field(\'prop1\')")]  \n     FAIL...  \n       DISPLAY: [(\'call\', "plain(\'prop1\')")]  \n     \n   \n  </td>\n </tr>\n</table>\n\n<table border="0" cellspacing="5" cellpadding="0">\n PROPERTY: [(\'name\', \'prop2\')] \n  <tr>\n   <td class="form-label">Prop2:</td>\n   <td class="form-text">\n     TEST: [(\'permission\', \'perm2\')]\n OK...  \n       DISPLAY: [(\'call\', "field(\'prop2\')")]  \n     FAIL...  \n       DISPLAY: [(\'call\', "plain(\'prop2\')")]  \n     \n   </td>\n  </tr>\n \n</table>')
42 def suite():
43    return unittest.makeSuite(TemplateParserTestCase, 'test')
46 # vim: set filetype=python ts=4 sw=4 et si