diff options
| author | Michael Foord <michael@voidspace.org.uk> | 2014-04-14 15:24:38 (GMT) |
|---|---|---|
| committer | Michael Foord <michael@voidspace.org.uk> | 2014-04-14 15:24:38 (GMT) |
| commit | a185679152d9e44fab1ea4f57b6c1d41ec0b458a (patch) | |
| tree | cac7c4e54672de1ac50a25bc473ffefd1313bca1 /Lib/unittest/test | |
| parent | ce4d9c2f5180272f05d5ea65db07b2898a27ef28 (diff) | |
| parent | d2623d778663c1fee90a8835c00d0caa5690d2bd (diff) | |
| download | cpython-a185679152d9e44fab1ea4f57b6c1d41ec0b458a.zip cpython-a185679152d9e44fab1ea4f57b6c1d41ec0b458a.tar.gz cpython-a185679152d9e44fab1ea4f57b6c1d41ec0b458a.tar.bz2 | |
Merge
Diffstat (limited to 'Lib/unittest/test')
| -rw-r--r-- | Lib/unittest/test/testmock/testmagicmethods.py | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/Lib/unittest/test/testmock/testmagicmethods.py b/Lib/unittest/test/testmock/testmagicmethods.py index 5ff158d..cc0e707 100644 --- a/Lib/unittest/test/testmock/testmagicmethods.py +++ b/Lib/unittest/test/testmock/testmagicmethods.py @@ -126,6 +126,31 @@ class TestMockingMagicMethods(unittest.TestCase): self.assertEqual(7 + mock, mock) self.assertEqual(mock.value, 16) + def test_division(self): + original = mock = Mock() + mock.value = 32 + self.assertRaises(TypeError, lambda: mock / 2) + + def truediv(self, other): + mock.value /= other + return self + mock.__truediv__ = truediv + self.assertEqual(mock / 2, mock) + self.assertEqual(mock.value, 16) + + del mock.__truediv__ + def itruediv(mock): + mock /= 4 + self.assertRaises(TypeError, itruediv, mock) + mock.__itruediv__ = truediv + mock /= 8 + self.assertEqual(mock, original) + self.assertEqual(mock.value, 2) + + self.assertRaises(TypeError, lambda: 8 / mock) + mock.__rtruediv__ = truediv + self.assertEqual(0.5 / mock, mock) + self.assertEqual(mock.value, 4) def test_hash(self): mock = Mock() |
