From e0799246322bedb4b197978f4d091e8734d383de Mon Sep 17 00:00:00 2001 From: Ross Lawley Date: Tue, 12 Jul 2011 14:43:21 +0100 Subject: [PATCH] Added extra test for update / update_one [closes #231] --- tests/document.py | 20 -------------------- tests/queryset.py | 36 ++++++++++++++++++++++++++++++++++++ 2 files changed, 36 insertions(+), 20 deletions(-) diff --git a/tests/document.py b/tests/document.py index df3b4fa1..92aa3c2e 100644 --- a/tests/document.py +++ b/tests/document.py @@ -2087,26 +2087,6 @@ class DocumentTest(unittest.TestCase): pickle_doc.reload() self.assertEquals(resurrected, pickle_doc) - def test_write_options(self): - """Test that passing write_options works""" - - self.Person.drop_collection() - - write_options = {"fsync": True} - - author, created = self.Person.objects.get_or_create( - name='Test User', write_options=write_options) - author.save(write_options=write_options) - - self.Person.objects.update(set__name='Ross', write_options=write_options) - - author = self.Person.objects.first() - self.assertEquals(author.name, 'Ross') - - self.Person.objects.update_one(set__name='Test User', write_options=write_options) - author = self.Person.objects.first() - self.assertEquals(author.name, 'Test User') - if __name__ == '__main__': unittest.main() diff --git a/tests/queryset.py b/tests/queryset.py index e21db0fa..a07ff927 100644 --- a/tests/queryset.py +++ b/tests/queryset.py @@ -211,6 +211,42 @@ class QuerySetTest(unittest.TestCase): Blog.drop_collection() + def test_update_write_options(self): + """Test that passing write_options works""" + + self.Person.drop_collection() + + write_options = {"fsync": True} + + author, created = self.Person.objects.get_or_create( + name='Test User', write_options=write_options) + author.save(write_options=write_options) + + self.Person.objects.update(set__name='Ross', write_options=write_options) + + author = self.Person.objects.first() + self.assertEquals(author.name, 'Ross') + + self.Person.objects.update_one(set__name='Test User', write_options=write_options) + author = self.Person.objects.first() + self.assertEquals(author.name, 'Test User') + + def test_update_update_has_a_value(self): + """Test to ensure that update is passed a value to update to""" + self.Person.drop_collection() + + author = self.Person(name='Test User') + author.save() + + def update_raises(): + self.Person.objects(pk=author.pk).update({}) + + def update_one_raises(): + self.Person.objects(pk=author.pk).update({}) + + self.assertRaises(OperationError, update_raises) + self.assertRaises(OperationError, update_one_raises) + def test_update_array_position(self): """Ensure that updating by array position works.