(self)
| 1195 | |
| 1196 | |
| 1197 | def test_mock_calls(self): |
| 1198 | mock = MagicMock() |
| 1199 | |
| 1200 | # need to do this because MagicMock.mock_calls used to just return |
| 1201 | # a MagicMock which also returned a MagicMock when __eq__ was called |
| 1202 | self.assertIs(mock.mock_calls == [], True) |
| 1203 | |
| 1204 | mock = MagicMock() |
| 1205 | mock() |
| 1206 | expected = [('', (), {})] |
| 1207 | self.assertEqual(mock.mock_calls, expected) |
| 1208 | |
| 1209 | mock.foo() |
| 1210 | expected.append(call.foo()) |
| 1211 | self.assertEqual(mock.mock_calls, expected) |
| 1212 | # intermediate mock_calls work too |
| 1213 | self.assertEqual(mock.foo.mock_calls, [('', (), {})]) |
| 1214 | |
| 1215 | mock = MagicMock() |
| 1216 | mock().foo(1, 2, 3, a=4, b=5) |
| 1217 | expected = [ |
| 1218 | ('', (), {}), ('().foo', (1, 2, 3), dict(a=4, b=5)) |
| 1219 | ] |
| 1220 | self.assertEqual(mock.mock_calls, expected) |
| 1221 | self.assertEqual(mock.return_value.foo.mock_calls, |
| 1222 | [('', (1, 2, 3), dict(a=4, b=5))]) |
| 1223 | self.assertEqual(mock.return_value.mock_calls, |
| 1224 | [('foo', (1, 2, 3), dict(a=4, b=5))]) |
| 1225 | |
| 1226 | mock = MagicMock() |
| 1227 | mock().foo.bar().baz() |
| 1228 | expected = [ |
| 1229 | ('', (), {}), ('().foo.bar', (), {}), |
| 1230 | ('().foo.bar().baz', (), {}) |
| 1231 | ] |
| 1232 | self.assertEqual(mock.mock_calls, expected) |
| 1233 | self.assertEqual(mock().mock_calls, |
| 1234 | call.foo.bar().baz().call_list()) |
| 1235 | |
| 1236 | for kwargs in dict(), dict(name='bar'): |
| 1237 | mock = MagicMock(**kwargs) |
| 1238 | int(mock.foo) |
| 1239 | expected = [('foo.__int__', (), {})] |
| 1240 | self.assertEqual(mock.mock_calls, expected) |
| 1241 | |
| 1242 | mock = MagicMock(**kwargs) |
| 1243 | mock.a()() |
| 1244 | expected = [('a', (), {}), ('a()', (), {})] |
| 1245 | self.assertEqual(mock.mock_calls, expected) |
| 1246 | self.assertEqual(mock.a().mock_calls, [call()]) |
| 1247 | |
| 1248 | mock = MagicMock(**kwargs) |
| 1249 | mock(1)(2)(3) |
| 1250 | self.assertEqual(mock.mock_calls, call(1)(2)(3).call_list()) |
| 1251 | self.assertEqual(mock().mock_calls, call(2)(3).call_list()) |
| 1252 | self.assertEqual(mock()().mock_calls, call(3).call_list()) |
| 1253 | |
| 1254 | mock = MagicMock(**kwargs) |
nothing calls this directly
no test coverage detected