Changeset 28:4692e23155a3 in ralphm-patches for pubsub-forms.patch
- Timestamp:
- Jan 2, 2010, 10:50:14 PM (13 years ago)
- Branch:
- default
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
pubsub-forms.patch
r27 r28 3 3 diff -r ba58db23e8b9 wokkel/data_form.py 4 4 --- a/wokkel/data_form.py Fri Jan 01 15:54:26 2010 +0100 5 +++ b/wokkel/data_form.py Sat Jan 02 13:53:242010 +01005 +++ b/wokkel/data_form.py Sat Jan 02 22:49:40 2010 +0100 6 6 @@ -76,6 +76,7 @@ 7 7 option['label'] = self.label … … 155 155 form['type'] = self.formType 156 156 157 @@ -516,3 +604, 58@@157 @@ -516,3 +604,65 @@ 158 158 values[name] = value 159 159 … … 161 161 + 162 162 + 163 + def typeCheck(self, fieldDefs , filterUnknown=False):163 + def typeCheck(self, fieldDefs=None, filterUnknown=False): 164 164 + """ 165 165 + Check values of fields according to the field definition. … … 176 176 + that is not set. 177 177 + 178 + If C{fieldDefs} is None, an empty dictionary is assumed. This is 179 + useful for coercing boolean and JID values on forms with type 180 + C{'form'}. 181 + 178 182 + @param fieldDefs: Field definitions as a dictionary. See 179 183 + L{wokkel.iwokkel.IPubSubService.getConfigurationOptions} … … 184 188 + @type filterUnknown: C{bool} 185 189 + """ 190 + 191 + if fieldDefs is None: 192 + fieldDefs = {} 186 193 + 187 194 + filtered = [] … … 216 223 diff -r ba58db23e8b9 wokkel/pubsub.py 217 224 --- a/wokkel/pubsub.py Fri Jan 01 15:54:26 2010 +0100 218 +++ b/wokkel/pubsub.py Sat Jan 02 13:53:242010 +0100225 +++ b/wokkel/pubsub.py Sat Jan 02 22:49:40 2010 +0100 219 226 @@ -1,6 +1,6 @@ 220 227 # -*- test-case-name: wokkel.test.test_pubsub -*- … … 260 267 diff -r ba58db23e8b9 wokkel/test/test_data_form.py 261 268 --- a/wokkel/test/test_data_form.py Fri Jan 01 15:54:26 2010 +0100 262 +++ b/wokkel/test/test_data_form.py Sat Jan 02 13:53:242010 +0100269 +++ b/wokkel/test/test_data_form.py Sat Jan 02 22:49:40 2010 +0100 263 270 @@ -787,6 +787,128 @@ 264 271 self.assertRaises(data_form.Error, form.addField, field2) … … 390 397 """ 391 398 Each named field is represented in the values, keyed by name. 392 @@ -834,3 +956,1 26@@399 @@ -834,3 +956,142 @@ 393 400 form = data_form.Form('submit', fields=fields) 394 401 values = form.getValues() … … 517 524 + self.assertNotIn('pubsub#description', form.fields) 518 525 + self.assertEqual([], checked) 526 + 527 + 528 + def test_typeCheckNoFieldDefs(self): 529 + """ 530 + If there are no field defs, an empty dictionary is assumed. 531 + """ 532 + checked = [] 533 + form = data_form.Form('submit') 534 + form.addField(data_form.Field('list-single', var='pubsub#description', 535 + value='a node')) 536 + field = form.fields['pubsub#description'] 537 + field.typeCheck = lambda : checked.append(None) 538 + form.typeCheck() 539 + 540 + self.assertIn('pubsub#description', form.fields) 541 + self.assertEqual([None], checked)
Note: See TracChangeset
for help on using the changeset viewer.