def test_allow_empty_time(self): result = self.v.validate( DateTimeField('f', allow_empty_time=1, date_only=1), 'f', { 'subfield_f_year': '2002', 'subfield_f_month': '12', 'subfield_f_day': '1' }) self.assertEquals(2002, result.year()) self.assertEquals(12, result.month()) self.assertEquals(1, result.day()) self.assertEquals(0, result.hour()) self.assertEquals(0, result.minute()) result = self.v.validate( DateTimeField('f', allow_empty_time=1), 'f', { 'subfield_f_year': '2002', 'subfield_f_month': '12', 'subfield_f_day': '1', 'subfield_f_hour': '10', 'subfield_f_minute': '30' }) self.assertEquals(2002, result.year()) self.assertEquals(12, result.month()) self.assertEquals(1, result.day()) self.assertEquals(10, result.hour()) self.assertEquals(30, result.minute())
def test_ampm(self): result = self.v.validate( DateTimeField('f', ampm_time_style=1), 'f', { 'subfield_f_year': '2002', 'subfield_f_month': '12', 'subfield_f_day': '1', 'subfield_f_hour': '10', 'subfield_f_minute': '30', 'subfield_f_ampm': 'am' }) self.assertEquals(2002, result.year()) self.assertEquals(12, result.month()) self.assertEquals(1, result.day()) self.assertEquals(10, result.hour()) self.assertEquals(30, result.minute()) result = self.v.validate( DateTimeField('f', ampm_time_style=1), 'f', { 'subfield_f_year': '2002', 'subfield_f_month': '12', 'subfield_f_day': '1', 'subfield_f_hour': '10', 'subfield_f_minute': '30', 'subfield_f_ampm': 'pm' }) self.assertEquals(2002, result.year()) self.assertEquals(12, result.month()) self.assertEquals(1, result.day()) self.assertEquals(22, result.hour()) self.assertEquals(30, result.minute()) self.assertValidatorRaises( KeyError, 'not_datetime', self.v.validate, DateTimeField('f', ampm_time_style=1), 'f', { 'subfield_f_year': '2002', 'subfield_f_month': '12', 'subfield_f_day': '1', 'subfield_f_hour': '10', 'subfield_f_minute': '30' })
def test_normal(self): result = self.v.validate( DateTimeField('f'), 'f', { 'subfield_f_year': '2002', 'subfield_f_month': '12', 'subfield_f_day': '1', 'subfield_f_hour': '10', 'subfield_f_minute': '30' }) self.assertEquals(2002, result.year()) self.assertEquals(12, result.month()) self.assertEquals(1, result.day()) self.assertEquals(10, result.hour()) self.assertEquals(30, result.minute())
def afterSetUp(self): self.root = self.portal self.root.form = ERP5Form('form', 'Form') self.root.getProperty = lambda key, d=None: \ dict(on_memory_field='123').get(key, d) form = self.root.form def addField(field): form._setObject(field.id, field, set_owner=0, suppress_events=1) addField(StringField('field')) form.field._p_oid = makeDummyOid() # method field form.field.values['external_validator'] = Method('this_is_a_method') # on-memory field (not in zodb) addField(StringField('my_on_memory_field')) form.my_on_memory_field._p_oid = None addField(StringField('my_on_memory_tales_field')) form.my_on_memory_tales_field.manage_tales_xmlrpc( {'default': 'python: repr(here)'}) form.my_on_memory_field._p_oid = None # proxy field addField(ProxyField.ProxyField('proxy_field')) form.proxy_field._p_oid = makeDummyOid() form.proxy_field.values['form_id'] = 'form' form.proxy_field.values['field_id'] = 'field' # proxy field with tales addField(ProxyField.ProxyField('proxy_field_tales')) form.proxy_field_tales._p_oid = makeDummyOid() form.proxy_field_tales.tales['form_id'] = TALESMethod('string:form') form.proxy_field_tales.tales['field_id'] = TALESMethod('string:field') # datetime field (input style is list) addField(DateTimeField('datetime_field')) form.datetime_field._p_oid = makeDummyOid() form.datetime_field._edit(dict(input_style='list')) for i in form.datetime_field._get_sub_form().fields.values(): i._p_oid = makeDummyOid()
def afterSetUp(self): self.field = DateTimeField('test_field') self.widget = self.field.widget self.validator = self.field.validator