Merge branch 'pr-622'

This commit is contained in:
GregBestland
2016-07-19 18:06:06 -05:00

View File

@@ -79,8 +79,8 @@ class ModelUpdateTests(BaseCassEngTestCase):
self.assertEqual(m2.count, m1.count)
self.assertEqual(m2.text, m0.text)
def test_noop_model_update(self):
""" tests that calling update on a model with no changes will do nothing. """
def test_noop_model_direct_update(self):
""" Tests that calling update on a model with no changes will do nothing. """
m0 = TestUpdateModel.create(count=5, text='monkey')
with patch.object(self.session, 'execute') as execute:
@@ -91,6 +91,38 @@ class ModelUpdateTests(BaseCassEngTestCase):
m0.update(count=5)
assert execute.call_count == 0
with self.assertRaises(ValidationError):
m0.update(partition=m0.partition)
with self.assertRaises(ValidationError):
m0.update(cluster=m0.cluster)
def test_noop_model_assignation_update(self):
""" Tests that assigning the same value on a model will do nothing. """
# Create object and fetch it back to eliminate any hidden variable
# cache effect.
m0 = TestUpdateModel.create(count=5, text='monkey')
m1 = TestUpdateModel.get(partition=m0.partition, cluster=m0.cluster)
with patch.object(self.session, 'execute') as execute:
m1.save()
assert execute.call_count == 0
with patch.object(self.session, 'execute') as execute:
m1.count = 5
m1.save()
assert execute.call_count == 0
with patch.object(self.session, 'execute') as execute:
m1.partition = m0.partition
m1.save()
assert execute.call_count == 0
with patch.object(self.session, 'execute') as execute:
m1.cluster = m0.cluster
m1.save()
assert execute.call_count == 0
def test_invalid_update_kwarg(self):
""" tests that passing in a kwarg to the update method that isn't a column will fail """
m0 = TestUpdateModel.create(count=5, text='monkey')