From 504c5a9889c623dfae24f2f95bc14f4e236c1a86 Mon Sep 17 00:00:00 2001 From: "A. Jesse Jiryu Davis" Date: Wed, 18 Jun 2014 16:19:58 -0400 Subject: [PATCH] PYTHON-712 ObjectId.is_valid(None) should be False. --- bson/objectid.py | 3 +++ test/test_objectid.py | 1 + 2 files changed, 4 insertions(+) diff --git a/bson/objectid.py b/bson/objectid.py index 2dd672798..555bcfc61 100644 --- a/bson/objectid.py +++ b/bson/objectid.py @@ -139,6 +139,9 @@ class ObjectId(object): .. versionadded:: 2.3 """ + if not oid: + return False + try: ObjectId(oid) return True diff --git a/test/test_objectid.py b/test/test_objectid.py index a8271cb75..b0a11c912 100644 --- a/test/test_objectid.py +++ b/test/test_objectid.py @@ -176,6 +176,7 @@ class TestObjectId(unittest.TestCase): self.assertEqual(oid_1_9, oid_1_10) def test_is_valid(self): + self.assertFalse(ObjectId.is_valid(None)) self.assertFalse(ObjectId.is_valid(4)) self.assertFalse(ObjectId.is_valid(175.0)) self.assertFalse(ObjectId.is_valid({"test": 4}))