[ Index ] |
|
Code source de Kupu-1.3.5 |
1 ############################################################################## 2 # 3 # Copyright (c) 2003-2005 Kupu Contributors. All rights reserved. 4 # 5 # This software is distributed under the terms of the Kupu 6 # License. See LICENSE.txt for license text. For a list of Kupu 7 # Contributors see CREDITS.txt. 8 # 9 ############################################################################## 10 """Tests for the library tool 11 12 $Id: test_resourcetypemapper.py 14615 2005-07-13 11:05:28Z duncan $ 13 """ 14 15 import os, sys 16 if __name__ == '__main__': 17 execfile(os.path.join(sys.path[0], 'framework.py')) 18 19 import Acquisition 20 from Testing.ZopeTestCase import ZopeTestCase 21 # from Products.CMFPlone.tests import PloneTestCase 22 from Products.kupu.plone.librarytool import KupuLibraryTool 23 24 class FakeType: 25 def __init__(self, id, **kw): 26 self.id = id 27 for k in kw: 28 setattr(self, k, kw[k]) 29 30 class FakeTypeTool: 31 def listTypeInfo(self, container=None): 32 return [ FakeType(f) 33 for f in "Foo|Bar|Monkey|Ape|Nothing In Here Anymore|Bad Monkey|Bad Ape".split('|') ] 34 35 class FakePortal(Acquisition.Implicit): 36 absolute_url = lambda(self): None 37 portal_types = FakeTypeTool() 38 39 40 class TestIResourceTypeMapper(ZopeTestCase): 41 """Test the implementation of IResourceMapper in KupuLibraryTool""" 42 43 def afterSetUp(self): 44 self.portal = FakePortal() 45 self.type_map = self.prepare() 46 47 def prepare(self): 48 type_map = KupuLibraryTool() 49 type_map = type_map.__of__(self.portal) 50 type_map.addResourceType("foobar", ("Foo", "", "Bar")) 51 type_map.addResourceType("bonobo", ("Monkey", " Ape\n")) 52 return type_map 53 54 def test_get_portal_types(self): 55 type_map = self.type_map 56 self.assertEqual(type_map.getPortalTypesForResourceType("foobar"), 57 ("Foo", "Bar")) 58 self.assertEqual(type_map.getPortalTypesForResourceType("bonobo"), 59 ("Monkey", "Ape")) 60 61 def test_update(self): 62 type_map = self.type_map 63 type_info = [ 64 dict(old_type='foobar', resource_type='foobar', 65 portal_types=("Nothing In Here Anymore",)), 66 dict(old_type='bonobo', resource_type='chimpanse', 67 portal_types=("Bad Monkey", "Bad Ape")), 68 ] 69 type_map.updateResourceTypes(type_info) 70 self.assertEqual(type_map.getPortalTypesForResourceType("foobar"), 71 ("Nothing In Here Anymore",)) 72 self.assertEqual(type_map.getPortalTypesForResourceType("chimpanse"), 73 ("Bad Monkey", "Bad Ape")) 74 self.assertRaises(KeyError, type_map.getPortalTypesForResourceType, 75 "bonobo") 76 77 def test_delete(self): 78 type_map = self.type_map 79 type_map.deleteResourceTypes(["foobar", "bonobo"]) 80 self.assertRaises(KeyError, type_map.getPortalTypesForResourceType, 81 "foobar") 82 self.assertRaises(KeyError, type_map.getPortalTypesForResourceType, 83 "bonobo") 84 85 if __name__ == '__main__': 86 framework() 87 else: 88 # While framework.py provides its own test_suite() 89 # method the testrunner utility does not. 90 from unittest import TestSuite, makeSuite 91 def test_suite(): 92 suite = TestSuite() 93 suite.addTest(makeSuite(TestIResourceTypeMapper)) 94 return suite
titre
Description
Corps
titre
Description
Corps
titre
Description
Corps
titre
Corps
Généré le : Sun Feb 25 15:30:41 2007 | par Balluche grâce à PHPXref 0.7 |