def test_date_valid(self): self.assertFalse(date_util.valid(123)) self.assertFalse(date_util.valid(False)) self.assertFalse(date_util.valid("abcde")) self.assertTrue(date_util.valid(datetime.datetime.utcnow())) self.assertTrue(date_util.valid(str(datetime.datetime.utcnow()))) self.assertTrue(date_util.valid("2015-01-01 12:00:01.000000Z")) self.assertTrue(date_util.valid("2015-01-01 12:00:01.000000+04")) self.assertTrue(date_util.valid("2015-01-01 12:00:01.000000+0600")) self.assertTrue(date_util.valid("2015-01-01 12:00:01.000000+08:30"))
def test_date_valid(self): self.assertFalse(date_util.valid(123)) self.assertFalse(date_util.valid(False)) self.assertFalse(date_util.valid('abcde')) self.assertTrue(date_util.valid(datetime.datetime.utcnow())) self.assertTrue(date_util.valid(str(datetime.datetime.utcnow()))) self.assertTrue(date_util.valid('2015-01-01 12:00:01.000000Z')) self.assertTrue(date_util.valid('2015-01-01 12:00:01.000000+04')) self.assertTrue(date_util.valid('2015-01-01 12:00:01.000000+0600')) self.assertTrue(date_util.valid('2015-01-01 12:00:01.000000+08:30'))
def serialize(obj): doc = {} for k, v in six.iteritems(obj.__dict__): if isinstance(v, SERIALIZABLE_TYPES): doc[k] = date_util.format(v) if date_util.valid(v) else v return doc
def deserialize(obj_type, data): obj = obj_type() for k, v in six.iteritems(data): if isinstance(v, SERIALIZABLE_TYPES): v = date_util.parse(v) if date_util.valid(v) else v setattr(obj, k, v) return obj