Mercurial > p > roundup > code
diff test/test_templating.py @ 3972:eee76dd4a09f
'Make a Copy' failed with more than one person in nosy list [SF#1906147]
| author | Richard Jones <richard@users.sourceforge.net> |
|---|---|
| date | Fri, 07 Mar 2008 00:35:47 +0000 |
| parents | 2372597ebbdb |
| children | 13161539e5bd |
line wrap: on
line diff
--- a/test/test_templating.py Sat Mar 01 08:18:07 2008 +0000 +++ b/test/test_templating.py Fri Mar 07 00:35:47 2008 +0000 @@ -12,7 +12,8 @@ def setUp(self): self.form = FieldStorage() self.client = MockNull() - self.client.db = MockDatabase() + self.client.db = db = MockDatabase() + db.security.hasPermission = lambda *args, **kw: True self.client.form = self.form class HTMLDatabaseTestCase(TemplatingTestCase): @@ -69,6 +70,24 @@ self.assertEqual(lookupKeys(shrubbery, 'spam', ['ok','2']), ['ok', 'eggs']) +class HTMLClassTestCase(TemplatingTestCase) : + + def test_multilink(self): + """`lookup` of an item will fail if leading or trailing whitespace + has not been stripped. + """ + def lookup(key) : + self.assertEqual(key, key.strip()) + return "User%s"%key + self.form.list.append(MiniFieldStorage("nosy", "1, 2")) + nosy = hyperdb.Multilink("user") + self.client.db.classes = dict \ + ( issue = MockNull(getprops = lambda : dict(nosy = nosy)) + , user = MockNull(get = lambda id, name : id, lookup = lookup) + ) + cls = HTMLClass(self.client, "issue") + cls["nosy"] + ''' class HTMLPermissions: def is_edit_ok(self): @@ -243,6 +262,7 @@ suite = unittest.TestSuite() suite.addTest(unittest.makeSuite(HTMLDatabaseTestCase)) suite.addTest(unittest.makeSuite(FunctionsTestCase)) + suite.addTest(unittest.makeSuite(HTMLClassTestCase)) return suite if __name__ == '__main__':
