def test_datetime_field_to_struct_with_format(): field = fields.TimeField(str_format='%H:%M %Y/%m') assert '%H:%M %Y/%m' == field.str_format tt = datetime.datetime(2014, 5, 7, 12, 45, 56) assert '12:45 2014/05' == field.to_struct(tt)
class Person(models.Base): name = fields.StringField(default=default_name) age = fields.IntField(default=default_age) height = fields.FloatField(default=default_height) job = fields.EmbeddedField(Job, default=default_job) hobbies = fields.ListField(items_types=str, default=default_hobbies) last_ate = fields.TimeField(default=default_last_ate) birthday = fields.DateField(default=default_birthday) time_of_death = fields.DateTimeField(default=default_time_of_death)
def test_time_field_parse_value(): field = fields.TimeField() assert datetime.time() == field.parse_value('00:00:00') assert (datetime.time(2, 34, 45, tzinfo=tzoffset( None, 7200)) == field.parse_value('2:34:45+02:00')) with pytest.raises(ValueError): field.parse_value('not a time')
def test_time_field_to_struct_with_format(): field = fields.TimeField(str_format='%H:%M') assert '%H:%M' == field.str_format tt = datetime.time() assert '00:00' == field.to_struct(tt) tt = datetime.time(12, 34, 56) assert '12:34' == field.to_struct(tt)
def test_time_field_to_struct(): field = fields.TimeField() assert field.str_format is None tt = datetime.time() assert '00:00:00' == field.to_struct(tt) tt = datetime.time(12, 34, 56) assert '12:34:56' == field.to_struct(tt)
def test_time_field_to_struct_with_tz(): field = fields.TimeField() tt = datetime.time(tzinfo=_TestCet()) assert '00:00:00+02:00' == field.to_struct(tt) tt = datetime.time(12, 34, 56, tzinfo=_TestCet()) assert '12:34:56+02:00' == field.to_struct(tt) tt = datetime.time(tzinfo=_TestUtc()) assert '00:00:00+00:00' == field.to_struct(tt) tt = datetime.time(12, 34, 56, tzinfo=_TestUtc()) assert '12:34:56+00:00' == field.to_struct(tt)
class Event(models.Base): time = fields.TimeField() date = fields.DateField() end = fields.DateTimeField()
class Event(models.Base): time = fields.TimeField(required=False)
class Event(models.Base): time = fields.TimeField()
def test_time_field_format_has_precedence(): field = fields.TimeField(str_format='%H:%M') tt = datetime.time(12, 34, 56, tzinfo=_TestCet()) assert '12:34' == field.to_struct(tt)
class Clock(models.Base): time = fields.TimeField()