MCPcopy Index your code
hub / github.com/mongodb/mongo-python-driver / test_uuid_representation

Method test_uuid_representation

test/test_common.py:35–111  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

33
34class TestCommon(IntegrationTest):
35 def test_uuid_representation(self):
36 coll = self.db.uuid
37 coll.drop()
38
39 # Test property
40 self.assertEqual(UuidRepresentation.UNSPECIFIED, coll.codec_options.uuid_representation)
41
42 # Test basic query
43 uu = uuid.uuid4()
44 # Insert as binary subtype 3
45 coll = self.db.get_collection("uuid", CodecOptions(uuid_representation=PYTHON_LEGACY))
46 legacy_opts = coll.codec_options
47 coll.insert_one({"uu": uu})
48 self.assertEqual(uu, (coll.find_one({"uu": uu}))["uu"]) # type: ignore
49 coll = self.db.get_collection("uuid", CodecOptions(uuid_representation=STANDARD))
50 self.assertEqual(STANDARD, coll.codec_options.uuid_representation)
51 self.assertEqual(None, coll.find_one({"uu": uu}))
52 uul = Binary.from_uuid(uu, PYTHON_LEGACY)
53 self.assertEqual(uul, (coll.find_one({"uu": uul}))["uu"]) # type: ignore
54
55 # Test count_documents
56 self.assertEqual(0, coll.count_documents({"uu": uu}))
57 coll = self.db.get_collection("uuid", CodecOptions(uuid_representation=PYTHON_LEGACY))
58 self.assertEqual(1, coll.count_documents({"uu": uu}))
59
60 # Test delete
61 coll = self.db.get_collection("uuid", CodecOptions(uuid_representation=STANDARD))
62 coll.delete_one({"uu": uu})
63 self.assertEqual(1, coll.count_documents({}))
64 coll = self.db.get_collection("uuid", CodecOptions(uuid_representation=PYTHON_LEGACY))
65 coll.delete_one({"uu": uu})
66 self.assertEqual(0, coll.count_documents({}))
67
68 # Test update_one
69 coll.insert_one({"_id": uu, "i": 1})
70 coll = self.db.get_collection("uuid", CodecOptions(uuid_representation=STANDARD))
71 coll.update_one({"_id": uu}, {"$set": {"i": 2}})
72 coll = self.db.get_collection("uuid", CodecOptions(uuid_representation=PYTHON_LEGACY))
73 self.assertEqual(1, (coll.find_one({"_id": uu}))["i"]) # type: ignore
74 coll.update_one({"_id": uu}, {"$set": {"i": 2}})
75 self.assertEqual(2, (coll.find_one({"_id": uu}))["i"]) # type: ignore
76
77 # Test Cursor.distinct
78 self.assertEqual([2], coll.find({"_id": uu}).distinct("i"))
79 coll = self.db.get_collection("uuid", CodecOptions(uuid_representation=STANDARD))
80 self.assertEqual([], coll.find({"_id": uu}).distinct("i"))
81
82 # Test findAndModify
83 self.assertEqual(None, coll.find_one_and_update({"_id": uu}, {"$set": {"i": 5}}))
84 coll = self.db.get_collection("uuid", CodecOptions(uuid_representation=PYTHON_LEGACY))
85 self.assertEqual(2, (coll.find_one_and_update({"_id": uu}, {"$set": {"i": 5}}))["i"])
86 self.assertEqual(5, (coll.find_one({"_id": uu}))["i"]) # type: ignore
87
88 # Test command
89 self.assertEqual(
90 5,
91 (
92 self.db.command(

Callers

nothing calls this directly

Calls 13

CodecOptionsClass · 0.90
from_uuidMethod · 0.80
dropMethod · 0.45
get_collectionMethod · 0.45
insert_oneMethod · 0.45
find_oneMethod · 0.45
count_documentsMethod · 0.45
delete_oneMethod · 0.45
update_oneMethod · 0.45
distinctMethod · 0.45
findMethod · 0.45
find_one_and_updateMethod · 0.45

Tested by

no test coverage detected