Changeset 2099 in products
- Timestamp:
- Apr 9, 2010 12:19:57 PM (14 years ago)
- Location:
- quintagroup.pfg.captcha/trunk/quintagroup/pfg/captcha
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
quintagroup.pfg.captcha/trunk/quintagroup/pfg/captcha/tests.py
r2098 r2099 10 10 from Products.CMFCore.permissions import View 11 11 from Products.Archetypes.atapi import StringField 12 from Products.Archetypes.Registry import availableWidgets 12 13 14 from quintagroup.pfg.captcha import CaptchaField 13 15 from quintagroup.pfg.captcha import CaptchaWidget 14 16 from quintagroup.pfg.captcha import CaptchaValidator 17 from quintagroup.pfg.captcha.widget import CAPTCHA_MACRO 15 18 from quintagroup.pfg.captcha.field import CAPTCHA_ID, HIDDEN_FIELDS 16 19 … … 82 85 self.ff1 = getattr(self.folder, 'ff1') 83 86 self.ff1.invokeFactory('CaptchaField', 'captcha_field') 84 87 85 88 def testId(self): 86 89 """CaptchaField has always CAPTCHA_ID id.""" … … 103 106 self.assertEqual(type(fgField), StringField) 104 107 self.assertEqual(bool(fgField.searchable), False ) 105 self.assertEqual(fgField.write_permission, View ,)108 self.assertEqual(fgField.write_permission, View) 106 109 self.assertEqual(type(fgField.widget), CaptchaWidget) 107 110 validators = [v.__class__ for v in fgField.validators._chain] 108 111 self.assertEqual(CaptchaValidator in validators, True) 109 112 113 114 class TestCaptchaWidget(ptc.PloneTestCase): 115 116 CF = CaptchaField.__module__ + '.CaptchaField' 117 CW = CaptchaWidget.__module__ + '.CaptchaWidget' 118 119 def afterSetUp(self): 120 self.widgets = dict(availableWidgets()) 121 122 def testRegistration(self): 123 self.assertEqual(self.CW in self.widgets, True) 124 cw = self.widgets[self.CW] 125 self.assertEqual(self.CF in cw.used_for, True) 126 127 def testWidgetMacro(self): 128 widget_macro = self.widgets[self.CW].klass._properties['macro'] 129 self.assertEqual(widget_macro, CAPTCHA_MACRO) 130 131 def testWidgetMacroAccessable(self): 132 macro = self.portal.restrictedTraverse(CAPTCHA_MACRO) 133 self.assertNotEqual(macro, None) 134 110 135 111 136 def test_suite(): … … 113 138 suite.addTest(unittest.makeSuite(TestInstallations)) 114 139 suite.addTest(unittest.makeSuite(TestCaptchaField)) 140 suite.addTest(unittest.makeSuite(TestCaptchaWidget)) 115 141 return suite -
quintagroup.pfg.captcha/trunk/quintagroup/pfg/captcha/widget.py
r2084 r2099 2 2 from Products.Archetypes.Registry import registerWidget 3 3 4 CAPTCHA_MACRO = "captchaField_widget" 5 4 6 class CaptchaWidget(StringWidget): 5 7 _properties = StringWidget._properties.copy() 6 _properties.update( {'macro' : "captchaField_widget"} )8 _properties.update( {'macro' : CAPTCHA_MACRO} ) 7 9 8 10 … … 10 12 title = 'Captcha widget', 11 13 description= ('Renders captcha image and string input',), 12 used_for = ('quintagroup.pfg.captcha. content.CaptchaField',)14 used_for = ('quintagroup.pfg.captcha.field.CaptchaField',) 13 15 )
Note: See TracChangeset
for help on using the changeset viewer.