]> review.fuel-infra Code Review - openstack-build/cinder-build.git/commitdiff
Preserve mock side_effect’s in test_pure
authorPatrick East <patrick.east@purestorage.com>
Mon, 13 Jul 2015 20:42:46 +0000 (13:42 -0700)
committerPatrick East <patrick.east@purestorage.com>
Mon, 13 Jul 2015 21:08:33 +0000 (14:08 -0700)
The helper method to test if exceptions are propagated or handled would
unset the mock objects side_effect value when its done. This overrides
the original value making the mock not behave as expected as soon as it
is passed into assert_error_propagates.

This changes the helper to store the original side effect and then put
it back once we are done making it throw an exception.

Change-Id: I71900071a1c050913b7283aa743a17c24da1a6b9
Closes-Bug: #1474130

cinder/tests/unit/test_pure.py

index 26783fa7eb4a69ab07217763319b30d3b5697ee2..002449306dd84bd7b0c23d4c10e3007703ef2292 100644 (file)
@@ -205,11 +205,12 @@ class PureDriverTestCase(test.TestCase):
         """
         func(*args, **kwargs)
         for mock_func in mocks:
+            original_side_effect = mock_func.side_effect
             mock_func.side_effect = [exception.PureDriverException(
                 reason='reason')]
             self.assertRaises(exception.PureDriverException,
                               func, *args, **kwargs)
-            mock_func.side_effect = None
+            mock_func.side_effect = original_side_effect
 
 
 class PureBaseVolumeDriverTestCase(PureDriverTestCase):