def test(self, value): if isinstance(value, six.string_types): if len(value.strip()) == 0: return 0 if format_regex(self.format): match = format_regex(self.format).match(value) return 1 if match is not None else -1 return super(DateTime, self).test(value)
def test(self, value): """Apply the regex for this format.""" if isinstance(value, six.string_types): if not len(value.strip()): return 0 if format_regex(self.format): match = format_regex(self.format).match(value) return 1 if match is not None else -1 return super(DateTime, self).test(value)
def test_datetime_formats(self): conv = date.DateTime() dt = conv.cast('6/16/99 0:00') assert dt is not None, dt assert dt.year == 1999, dt regex = formats.format_regex('%m/%d/%y %H:%M') m = regex.match('6/16/99 0:00') assert m is not None, m m = regex.match('6/16/1999 0:00') assert m is None, m
def test_formats_regex(self): regex = formats.format_regex('%Y-%m-%d') assert regex.match('2012-01-04') assert date.Date().test('2012-01-04') == 1 assert date.Date(format='%Y-%m-%d').test('2012-01-02') == 1 assert date.Date().test('2012-01-x04') == -1