Allow use of 'None' as 'missing' for DateTimes.

This commit is contained in:
Daniel Nouri
2011-12-14 20:15:30 +01:00
committed by Christian Neumann
parent a958e60745
commit 6c6849ceab
2 changed files with 9 additions and 1 deletions

View File

@@ -1231,7 +1231,7 @@ class DateTime(SchemaType):
self.default_tzinfo = default_tzinfo
def serialize(self, node, appstruct):
if appstruct is null:
if not appstruct:
return null
if type(appstruct) is datetime.date: # cant use isinstance; dt subs date

View File

@@ -1542,6 +1542,14 @@ class TestDateTime(unittest.TestCase):
result = typ.serialize(node, val)
self.assertEqual(result, colander.null)
def test_serialize_none(self):
import colander
val = None
node = DummySchemaNode(None)
typ = self._makeOne()
result = typ.serialize(node, val)
self.assertEqual(result, colander.null)
def test_serialize_with_garbage(self):
typ = self._makeOne()
node = DummySchemaNode(None)