Skip to content

Commit 7c4acac

Browse files
committed
Remove all uses of MagicMock
MagicMock is a version of Mock with extra features for tests that need to test usage of magic methods (i.e. __nonzero__, __cmp__, etc.). None of the oauth2client tests actually need these extra features though.
1 parent 1d42733 commit 7c4acac

File tree

7 files changed

+62
-62
lines changed

7 files changed

+62
-62
lines changed

tests/contrib/django_util/test_decorators.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ def test_view(request):
6363
@mock.patch('oauth2client.client.OAuth2Credentials')
6464
def test_has_credentials_in_storage(self, OAuth2Credentials):
6565
request = self.factory.get('/test')
66-
request.session = mock.MagicMock()
66+
request.session = mock.Mock()
6767

6868
credentials_mock = mock.Mock(
6969
scopes=set(django.conf.settings.GOOGLE_OAUTH2_SCOPES))
@@ -88,7 +88,7 @@ def test_view(request):
8888
@mock.patch('oauth2client.contrib.dictionary_storage.DictionaryStorage')
8989
def test_specified_scopes(self, dictionary_storage_mock):
9090
request = self.factory.get('/test')
91-
request.session = mock.MagicMock()
91+
request.session = mock.Mock()
9292

9393
credentials_mock = mock.Mock(
9494
scopes=set(django.conf.settings.GOOGLE_OAUTH2_SCOPES))
@@ -141,13 +141,13 @@ def test_view(request):
141141
@mock.patch('oauth2client.contrib.django_util.UserOAuth2', autospec=True)
142142
def test_has_credentials_in_storage(self, UserOAuth2):
143143
request = self.factory.get('/test')
144-
request.session = mock.MagicMock()
144+
request.session = mock.Mock()
145145

146146
@decorators.oauth_required
147147
def test_view(request):
148148
return http.HttpResponse("test")
149149

150-
my_user_oauth = mock.MagicMock()
150+
my_user_oauth = mock.Mock()
151151

152152
UserOAuth2.return_value = my_user_oauth
153153
my_user_oauth.has_credentials.return_value = True
@@ -161,7 +161,7 @@ def test_has_credentials_in_storage_no_scopes(
161161
self, OAuth2Credentials):
162162
request = self.factory.get('/test')
163163

164-
request.session = mock.MagicMock()
164+
request.session = mock.Mock()
165165
credentials_mock = mock.Mock(
166166
scopes=set(django.conf.settings.GOOGLE_OAUTH2_SCOPES))
167167
credentials_mock.has_scopes.return_value = False
@@ -179,7 +179,7 @@ def test_view(request):
179179
@mock.patch('oauth2client.client.OAuth2Credentials')
180180
def test_specified_scopes(self, OAuth2Credentials):
181181
request = self.factory.get('/test')
182-
request.session = mock.MagicMock()
182+
request.session = mock.Mock()
183183

184184
credentials_mock = mock.Mock(
185185
scopes=set(django.conf.settings.GOOGLE_OAUTH2_SCOPES))

tests/contrib/test_devshell.py

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -75,25 +75,25 @@ class Test_SendRecv(unittest2.TestCase):
7575

7676
def test_port_zero(self):
7777
with mock.patch('oauth2client.contrib.devshell.os') as os_mod:
78-
os_mod.getenv = mock.MagicMock(name='getenv', return_value=0)
78+
os_mod.getenv = mock.Mock(name='getenv', return_value=0)
7979
with self.assertRaises(devshell.NoDevshellServer):
8080
devshell._SendRecv()
8181
os_mod.getenv.assert_called_once_with(devshell.DEVSHELL_ENV, 0)
8282

8383
def test_no_newline_in_received_header(self):
8484
non_zero_port = 1
85-
sock = mock.MagicMock()
85+
sock = mock.Mock()
8686

8787
header_without_newline = ''
88-
sock.recv(6).decode = mock.MagicMock(
88+
sock.recv(6).decode = mock.Mock(
8989
name='decode', return_value=header_without_newline)
9090

9191
with mock.patch('oauth2client.contrib.devshell.os') as os_mod:
92-
os_mod.getenv = mock.MagicMock(name='getenv',
93-
return_value=non_zero_port)
92+
os_mod.getenv = mock.Mock(name='getenv',
93+
return_value=non_zero_port)
9494
with mock.patch('oauth2client.contrib.devshell.socket') as socket:
95-
socket.socket = mock.MagicMock(name='socket',
96-
return_value=sock)
95+
socket.socket = mock.Mock(name='socket',
96+
return_value=sock)
9797
with self.assertRaises(devshell.CommunicationError):
9898
devshell._SendRecv()
9999
os_mod.getenv.assert_called_once_with(devshell.DEVSHELL_ENV, 0)

tests/contrib/test_keyring_storage.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -58,15 +58,15 @@ def test_locked_get(self):
5858
service_name = 'my_unit_test'
5959
user_name = 'me'
6060
mock_content = (object(), 'mock_content')
61-
mock_return_creds = mock.MagicMock()
62-
mock_return_creds.set_store = set_store = mock.MagicMock(
61+
mock_return_creds = mock.Mock()
62+
mock_return_creds.set_store = set_store = mock.Mock(
6363
name='set_store')
6464
with mock.patch.object(keyring, 'get_password',
6565
return_value=mock_content,
6666
autospec=True) as get_password:
6767
class_name = 'oauth2client.client.Credentials'
6868
with mock.patch(class_name) as MockCreds:
69-
MockCreds.new_from_json = new_from_json = mock.MagicMock(
69+
MockCreds.new_from_json = new_from_json = mock.Mock(
7070
name='new_from_json', return_value=mock_return_creds)
7171
store = keyring_storage.Storage(service_name, user_name)
7272
credentials = store.locked_get()
@@ -82,9 +82,9 @@ def test_locked_put(self):
8282
with mock.patch.object(keyring, 'set_password',
8383
return_value=None,
8484
autospec=True) as set_password:
85-
credentials = mock.MagicMock()
85+
credentials = mock.Mock()
8686
to_json_ret = object()
87-
credentials.to_json = to_json = mock.MagicMock(
87+
credentials.to_json = to_json = mock.Mock(
8888
name='to_json', return_value=to_json_ret)
8989
store.locked_put(credentials)
9090
to_json.assert_called_once_with()

tests/contrib/test_xsrfutil.py

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -49,10 +49,10 @@ def test_bad_positional(self):
4949

5050
def test_it(self):
5151
digest = b'foobar'
52-
digester = mock.MagicMock()
53-
digester.digest = mock.MagicMock(name='digest', return_value=digest)
52+
digester = mock.Mock()
53+
digester.digest = mock.Mock(name='digest', return_value=digest)
5454
with mock.patch('oauth2client.contrib.xsrfutil.hmac') as hmac:
55-
hmac.new = mock.MagicMock(name='new', return_value=digester)
55+
hmac.new = mock.Mock(name='new', return_value=digester)
5656
token = xsrfutil.generate_token(TEST_KEY,
5757
TEST_USER_ID_1,
5858
action_id=TEST_ACTION_ID_1,
@@ -78,13 +78,13 @@ def test_it(self):
7878
def test_with_system_time(self):
7979
digest = b'foobar'
8080
curr_time = 1440449755.74
81-
digester = mock.MagicMock()
82-
digester.digest = mock.MagicMock(name='digest', return_value=digest)
81+
digester = mock.Mock()
82+
digester.digest = mock.Mock(name='digest', return_value=digest)
8383
with mock.patch('oauth2client.contrib.xsrfutil.hmac') as hmac:
84-
hmac.new = mock.MagicMock(name='new', return_value=digester)
84+
hmac.new = mock.Mock(name='new', return_value=digester)
8585

8686
with mock.patch('oauth2client.contrib.xsrfutil.time') as time:
87-
time.time = mock.MagicMock(name='time', return_value=curr_time)
87+
time.time = mock.Mock(name='time', return_value=curr_time)
8888
# when= is omitted
8989
token = xsrfutil.generate_token(TEST_KEY,
9090
TEST_USER_ID_1,
@@ -142,7 +142,7 @@ def test_token_too_old_implicit_current_time(self):
142142
key = user_id = None
143143
token = base64.b64encode(_helpers._to_bytes(str(token_time)))
144144
with mock.patch('oauth2client.contrib.xsrfutil.time') as time:
145-
time.time = mock.MagicMock(name='time', return_value=curr_time)
145+
time.time = mock.Mock(name='time', return_value=curr_time)
146146
self.assertFalse(xsrfutil.validate_token(key, token, user_id))
147147
time.time.assert_called_once_with()
148148

tests/test_client.py

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -362,26 +362,26 @@ def test_environment_caching(self):
362362

363363
def _environment_check_gce_helper(self, status_ok=True, socket_error=False,
364364
server_software=''):
365-
response = mock.MagicMock()
365+
response = mock.Mock()
366366
if status_ok:
367367
response.status = http_client.OK
368-
response.getheader = mock.MagicMock(
368+
response.getheader = mock.Mock(
369369
name='getheader',
370370
return_value=client._DESIRED_METADATA_FLAVOR)
371371
else:
372372
response.status = http_client.NOT_FOUND
373373

374-
connection = mock.MagicMock()
375-
connection.getresponse = mock.MagicMock(name='getresponse',
376-
return_value=response)
374+
connection = mock.Mock()
375+
connection.getresponse = mock.Mock(name='getresponse',
376+
return_value=response)
377377
if socket_error:
378378
connection.getresponse.side_effect = socket.error()
379379

380380
with mock.patch('oauth2client.client.os') as os_module:
381381
os_module.environ = {client._SERVER_SOFTWARE: server_software}
382382
with mock.patch('oauth2client.client.six') as six_module:
383383
http_client_module = six_module.moves.http_client
384-
http_client_module.HTTPConnection = mock.MagicMock(
384+
http_client_module.HTTPConnection = mock.Mock(
385385
name='HTTPConnection', return_value=connection)
386386

387387
if server_software == '':
@@ -1265,7 +1265,7 @@ def test__do_refresh_request_failure_w_json_error_and_store(self):
12651265
response = http_mock.ResponseMock({'status': http_client.BAD_GATEWAY})
12661266
error_msg = 'Where are we going wearer?'
12671267
content = json.dumps({'error': error_msg})
1268-
store = mock.MagicMock()
1268+
store = mock.Mock()
12691269
self._do_refresh_request_test_helper(response, content, error_msg,
12701270
store=store)
12711271

@@ -1323,7 +1323,7 @@ def test__do_revoke_success(self):
13231323

13241324
def test__do_revoke_success_with_store(self):
13251325
response = http_mock.ResponseMock()
1326-
store = mock.MagicMock()
1326+
store = mock.Mock()
13271327
self._do_revoke_test_helper(response, b'', None, store=store)
13281328

13291329
def test__do_revoke_non_json_failure(self):
@@ -1349,7 +1349,7 @@ def test__do_revoke_failure_w_json_error_and_store(self):
13491349
response = http_mock.ResponseMock({'status': http_client.BAD_GATEWAY})
13501350
error_msg = 'Where are we going wearer?'
13511351
content = json.dumps({'error': error_msg})
1352-
store = mock.MagicMock()
1352+
store = mock.Mock()
13531353
self._do_revoke_test_helper(response, content, error_msg,
13541354
store=store)
13551355

tests/test_crypt.py

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -80,11 +80,11 @@ def test_success_single_cert(self):
8080
message = object()
8181
signature = object()
8282

83-
verifier = mock.MagicMock()
84-
verifier.verify = mock.MagicMock(name='verify', return_value=True)
83+
verifier = mock.Mock()
84+
verifier.verify = mock.Mock(name='verify', return_value=True)
8585
with mock.patch('oauth2client.crypt.Verifier') as Verifier:
86-
Verifier.from_string = mock.MagicMock(name='from_string',
87-
return_value=verifier)
86+
Verifier.from_string = mock.Mock(name='from_string',
87+
return_value=verifier)
8888
result = crypt._verify_signature(message, signature, certs)
8989
self.assertEqual(result, None)
9090

@@ -101,14 +101,14 @@ def test_success_multiple_certs(self):
101101
message = object()
102102
signature = object()
103103

104-
verifier = mock.MagicMock()
104+
verifier = mock.Mock()
105105
# Use side_effect to force all 3 cert values to be used by failing
106106
# to verify on the first two.
107-
verifier.verify = mock.MagicMock(name='verify',
108-
side_effect=[False, False, True])
107+
verifier.verify = mock.Mock(name='verify',
108+
side_effect=[False, False, True])
109109
with mock.patch('oauth2client.crypt.Verifier') as Verifier:
110-
Verifier.from_string = mock.MagicMock(name='from_string',
111-
return_value=verifier)
110+
Verifier.from_string = mock.Mock(name='from_string',
111+
return_value=verifier)
112112
result = crypt._verify_signature(message, signature, certs)
113113
self.assertEqual(result, None)
114114

@@ -130,11 +130,11 @@ def test_failure(self):
130130
message = object()
131131
signature = object()
132132

133-
verifier = mock.MagicMock()
134-
verifier.verify = mock.MagicMock(name='verify', return_value=False)
133+
verifier = mock.Mock()
134+
verifier.verify = mock.Mock(name='verify', return_value=False)
135135
with mock.patch('oauth2client.crypt.Verifier') as Verifier:
136-
Verifier.from_string = mock.MagicMock(name='from_string',
137-
return_value=verifier)
136+
Verifier.from_string = mock.Mock(name='from_string',
137+
return_value=verifier)
138138
with self.assertRaises(crypt.AppIdentityError):
139139
crypt._verify_signature(message, signature, certs)
140140

@@ -204,8 +204,8 @@ def test_with_bad_token_lifetime(self):
204204
'exp': current_time + crypt.MAX_TOKEN_LIFETIME_SECS + 1,
205205
}
206206
with mock.patch('oauth2client.crypt.time') as time:
207-
time.time = mock.MagicMock(name='time',
208-
return_value=current_time)
207+
time.time = mock.Mock(name='time',
208+
return_value=current_time)
209209

210210
exception_caught = self._exception_helper(payload_dict)
211211
self.assertNotEqual(exception_caught, None)
@@ -219,8 +219,8 @@ def test_with_issued_at_in_future(self):
219219
'exp': current_time + crypt.MAX_TOKEN_LIFETIME_SECS - 1,
220220
}
221221
with mock.patch('oauth2client.crypt.time') as time:
222-
time.time = mock.MagicMock(name='time',
223-
return_value=current_time)
222+
time.time = mock.Mock(name='time',
223+
return_value=current_time)
224224

225225
exception_caught = self._exception_helper(payload_dict)
226226
self.assertNotEqual(exception_caught, None)
@@ -234,8 +234,8 @@ def test_with_expiration_in_the_past(self):
234234
'exp': current_time - crypt.CLOCK_SKEW_SECS - 1,
235235
}
236236
with mock.patch('oauth2client.crypt.time') as time:
237-
time.time = mock.MagicMock(name='time',
238-
return_value=current_time)
237+
time.time = mock.Mock(name='time',
238+
return_value=current_time)
239239

240240
exception_caught = self._exception_helper(payload_dict)
241241
self.assertNotEqual(exception_caught, None)
@@ -249,8 +249,8 @@ def test_success(self):
249249
'exp': current_time + crypt.MAX_TOKEN_LIFETIME_SECS - 1,
250250
}
251251
with mock.patch('oauth2client.crypt.time') as time:
252-
time.time = mock.MagicMock(name='time',
253-
return_value=current_time)
252+
time.time = mock.Mock(name='time',
253+
return_value=current_time)
254254

255255
exception_caught = self._exception_helper(payload_dict)
256256
self.assertEqual(exception_caught, None)
@@ -288,10 +288,10 @@ def test_jwt_payload_bad_json(self):
288288
@mock.patch('oauth2client.crypt._verify_time_range')
289289
@mock.patch('oauth2client.crypt._verify_signature')
290290
def test_success(self, verify_sig, verify_time, check_aud):
291-
certs = mock.MagicMock()
291+
certs = mock.Mock()
292292
cert_values = object()
293-
certs.values = mock.MagicMock(name='values',
294-
return_value=cert_values)
293+
certs.values = mock.Mock(name='values',
294+
return_value=cert_values)
295295
audience = object()
296296

297297
header = b'header'

tests/test_service_account.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -275,10 +275,10 @@ def test_access_token(self, utcnow):
275275
utcnow.return_value = NOW
276276

277277
# Create a custom credentials with a mock signer.
278-
signer = mock.MagicMock()
278+
signer = mock.Mock()
279279
signed_value = b'signed-content'
280-
signer.sign = mock.MagicMock(name='sign',
281-
return_value=signed_value)
280+
signer.sign = mock.Mock(name='sign',
281+
return_value=signed_value)
282282
credentials = service_account.ServiceAccountCredentials(
283283
self.service_account_email,
284284
signer,

0 commit comments

Comments
 (0)