add a test for what marc has been trying to do

This commit is contained in:
Mike Dirolf 2009-03-17 13:18:08 -04:00
parent 7ddbdc5442
commit 9eebac461e

View File

@ -390,5 +390,29 @@ class TestDatabase(unittest.TestCase):
self.assertEqual(db.test.c.find_one()["another test"], b)
self.assertEqual(db.test.c.find_one(), c)
# some stuff the user marc wanted to be able to do, make sure it works
def test_marc(self):
db = self.connection.pymongo_test
db.add_son_manipulator(AutoReference(db))
db.add_son_manipulator(NamespaceInjector())
db.drop_collection("users")
db.drop_collection("messages")
message_1 = {"title": "foo"}
db.messages.save(message_1)
message_2 = {"title": "bar"}
db.messages.save(message_2)
user = {"name": "marc",
"messages": [message_1, message_2]}
db.users.save(user)
message = db.messages.find_one()
db.messages.update(message, {"title": "buzz"})
self.assertEqual("buzz", db.users.find_one()["messages"][0]["title"])
self.assertEqual("bar", db.users.find_one()["messages"][1]["title"])
if __name__ == "__main__":
unittest.main()