Skip to content

Commit 4c41f2b

Browse files
authored
Merge pull request encode#4715 from auvipy/pytest4
converted test asserts of generics-test to pytest
2 parents f2a8252 + 10b5f36 commit 4c41f2b

File tree

1 file changed

+52
-51
lines changed

1 file changed

+52
-51
lines changed

tests/test_generics.py

Lines changed: 52 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -98,8 +98,8 @@ def test_get_root_view(self):
9898
request = factory.get('/')
9999
with self.assertNumQueries(1):
100100
response = self.view(request).render()
101-
self.assertEqual(response.status_code, status.HTTP_200_OK)
102-
self.assertEqual(response.data, self.data)
101+
assert response.status_code == status.HTTP_200_OK
102+
assert response.data == self.data
103103

104104
def test_post_root_view(self):
105105
"""
@@ -109,10 +109,10 @@ def test_post_root_view(self):
109109
request = factory.post('/', data, format='json')
110110
with self.assertNumQueries(1):
111111
response = self.view(request).render()
112-
self.assertEqual(response.status_code, status.HTTP_201_CREATED)
113-
self.assertEqual(response.data, {'id': 4, 'text': 'foobar'})
112+
assert response.status_code == status.HTTP_201_CREATED
113+
assert response.data == {'id': 4, 'text': 'foobar'}
114114
created = self.objects.get(id=4)
115-
self.assertEqual(created.text, 'foobar')
115+
assert created.text == 'foobar'
116116

117117
def test_put_root_view(self):
118118
"""
@@ -122,8 +122,8 @@ def test_put_root_view(self):
122122
request = factory.put('/', data, format='json')
123123
with self.assertNumQueries(0):
124124
response = self.view(request).render()
125-
self.assertEqual(response.status_code, status.HTTP_405_METHOD_NOT_ALLOWED)
126-
self.assertEqual(response.data, {"detail": 'Method "PUT" not allowed.'})
125+
assert response.status_code == status.HTTP_405_METHOD_NOT_ALLOWED
126+
assert response.data == {"detail": 'Method "PUT" not allowed.'}
127127

128128
def test_delete_root_view(self):
129129
"""
@@ -132,8 +132,8 @@ def test_delete_root_view(self):
132132
request = factory.delete('/')
133133
with self.assertNumQueries(0):
134134
response = self.view(request).render()
135-
self.assertEqual(response.status_code, status.HTTP_405_METHOD_NOT_ALLOWED)
136-
self.assertEqual(response.data, {"detail": 'Method "DELETE" not allowed.'})
135+
assert response.status_code == status.HTTP_405_METHOD_NOT_ALLOWED
136+
assert response.data == {"detail": 'Method "DELETE" not allowed.'}
137137

138138
def test_post_cannot_set_id(self):
139139
"""
@@ -143,10 +143,10 @@ def test_post_cannot_set_id(self):
143143
request = factory.post('/', data, format='json')
144144
with self.assertNumQueries(1):
145145
response = self.view(request).render()
146-
self.assertEqual(response.status_code, status.HTTP_201_CREATED)
147-
self.assertEqual(response.data, {'id': 4, 'text': 'foobar'})
146+
assert response.status_code == status.HTTP_201_CREATED
147+
assert response.data == {'id': 4, 'text': 'foobar'}
148148
created = self.objects.get(id=4)
149-
self.assertEqual(created.text, 'foobar')
149+
assert created.text == 'foobar'
150150

151151
def test_post_error_root_view(self):
152152
"""
@@ -156,7 +156,7 @@ def test_post_error_root_view(self):
156156
request = factory.post('/', data, HTTP_ACCEPT='text/html')
157157
response = self.view(request).render()
158158
expected_error = '<span class="help-block">Ensure this field has no more than 100 characters.</span>'
159-
self.assertIn(expected_error, response.rendered_content.decode('utf-8'))
159+
assert expected_error in response.rendered_content.decode('utf-8')
160160

161161

162162
EXPECTED_QUERIES_FOR_PUT = 2
@@ -185,8 +185,8 @@ def test_get_instance_view(self):
185185
request = factory.get('/1')
186186
with self.assertNumQueries(1):
187187
response = self.view(request, pk=1).render()
188-
self.assertEqual(response.status_code, status.HTTP_200_OK)
189-
self.assertEqual(response.data, self.data[0])
188+
assert response.status_code == status.HTTP_200_OK
189+
assert response.data == self.data[0]
190190

191191
def test_post_instance_view(self):
192192
"""
@@ -196,8 +196,8 @@ def test_post_instance_view(self):
196196
request = factory.post('/', data, format='json')
197197
with self.assertNumQueries(0):
198198
response = self.view(request).render()
199-
self.assertEqual(response.status_code, status.HTTP_405_METHOD_NOT_ALLOWED)
200-
self.assertEqual(response.data, {"detail": 'Method "POST" not allowed.'})
199+
assert response.status_code == status.HTTP_405_METHOD_NOT_ALLOWED
200+
assert response.data == {"detail": 'Method "POST" not allowed.'}
201201

202202
def test_put_instance_view(self):
203203
"""
@@ -207,10 +207,10 @@ def test_put_instance_view(self):
207207
request = factory.put('/1', data, format='json')
208208
with self.assertNumQueries(EXPECTED_QUERIES_FOR_PUT):
209209
response = self.view(request, pk='1').render()
210-
self.assertEqual(response.status_code, status.HTTP_200_OK)
211-
self.assertEqual(dict(response.data), {'id': 1, 'text': 'foobar'})
210+
assert response.status_code == status.HTTP_200_OK
211+
assert dict(response.data) == {'id': 1, 'text': 'foobar'}
212212
updated = self.objects.get(id=1)
213-
self.assertEqual(updated.text, 'foobar')
213+
assert updated.text == 'foobar'
214214

215215
def test_patch_instance_view(self):
216216
"""
@@ -221,10 +221,10 @@ def test_patch_instance_view(self):
221221

222222
with self.assertNumQueries(EXPECTED_QUERIES_FOR_PUT):
223223
response = self.view(request, pk=1).render()
224-
self.assertEqual(response.status_code, status.HTTP_200_OK)
225-
self.assertEqual(response.data, {'id': 1, 'text': 'foobar'})
224+
assert response.status_code == status.HTTP_200_OK
225+
assert response.data == {'id': 1, 'text': 'foobar'}
226226
updated = self.objects.get(id=1)
227-
self.assertEqual(updated.text, 'foobar')
227+
assert updated.text == 'foobar'
228228

229229
def test_delete_instance_view(self):
230230
"""
@@ -233,10 +233,10 @@ def test_delete_instance_view(self):
233233
request = factory.delete('/1')
234234
with self.assertNumQueries(2):
235235
response = self.view(request, pk=1).render()
236-
self.assertEqual(response.status_code, status.HTTP_204_NO_CONTENT)
237-
self.assertEqual(response.content, six.b(''))
236+
assert response.status_code == status.HTTP_204_NO_CONTENT
237+
assert response.content == six.b('')
238238
ids = [obj.id for obj in self.objects.all()]
239-
self.assertEqual(ids, [2, 3])
239+
assert ids == [2, 3]
240240

241241
def test_get_instance_view_incorrect_arg(self):
242242
"""
@@ -246,7 +246,7 @@ def test_get_instance_view_incorrect_arg(self):
246246
request = factory.get('/a')
247247
with self.assertNumQueries(0):
248248
response = self.view(request, pk='a').render()
249-
self.assertEqual(response.status_code, status.HTTP_404_NOT_FOUND)
249+
assert response.status_code == status.HTTP_404_NOT_FOUND
250250

251251
def test_put_cannot_set_id(self):
252252
"""
@@ -256,10 +256,10 @@ def test_put_cannot_set_id(self):
256256
request = factory.put('/1', data, format='json')
257257
with self.assertNumQueries(EXPECTED_QUERIES_FOR_PUT):
258258
response = self.view(request, pk=1).render()
259-
self.assertEqual(response.status_code, status.HTTP_200_OK)
260-
self.assertEqual(response.data, {'id': 1, 'text': 'foobar'})
259+
assert response.status_code == status.HTTP_200_OK
260+
assert response.data == {'id': 1, 'text': 'foobar'}
261261
updated = self.objects.get(id=1)
262-
self.assertEqual(updated.text, 'foobar')
262+
assert updated.text == 'foobar'
263263

264264
def test_put_to_deleted_instance(self):
265265
"""
@@ -271,7 +271,7 @@ def test_put_to_deleted_instance(self):
271271
request = factory.put('/1', data, format='json')
272272
with self.assertNumQueries(1):
273273
response = self.view(request, pk=1).render()
274-
self.assertEqual(response.status_code, status.HTTP_404_NOT_FOUND)
274+
assert response.status_code == status.HTTP_404_NOT_FOUND
275275

276276
def test_put_to_filtered_out_instance(self):
277277
"""
@@ -282,7 +282,7 @@ def test_put_to_filtered_out_instance(self):
282282
filtered_out_pk = BasicModel.objects.filter(text='filtered out')[0].pk
283283
request = factory.put('/{0}'.format(filtered_out_pk), data, format='json')
284284
response = self.view(request, pk=filtered_out_pk).render()
285-
self.assertEqual(response.status_code, status.HTTP_404_NOT_FOUND)
285+
assert response.status_code == status.HTTP_404_NOT_FOUND
286286

287287
def test_patch_cannot_create_an_object(self):
288288
"""
@@ -292,8 +292,8 @@ def test_patch_cannot_create_an_object(self):
292292
request = factory.patch('/999', data, format='json')
293293
with self.assertNumQueries(1):
294294
response = self.view(request, pk=999).render()
295-
self.assertEqual(response.status_code, status.HTTP_404_NOT_FOUND)
296-
self.assertFalse(self.objects.filter(id=999).exists())
295+
assert response.status_code == status.HTTP_404_NOT_FOUND
296+
assert not self.objects.filter(id=999).exists()
297297

298298
def test_put_error_instance_view(self):
299299
"""
@@ -303,7 +303,7 @@ def test_put_error_instance_view(self):
303303
request = factory.put('/', data, HTTP_ACCEPT='text/html')
304304
response = self.view(request, pk=1).render()
305305
expected_error = '<span class="help-block">Ensure this field has no more than 100 characters.</span>'
306-
self.assertIn(expected_error, response.rendered_content.decode('utf-8'))
306+
assert expected_error in response.rendered_content.decode('utf-8')
307307

308308

309309
class TestFKInstanceView(TestCase):
@@ -363,8 +363,8 @@ def test_overridden_get_object_view(self):
363363
request = factory.get('/1')
364364
with self.assertNumQueries(1):
365365
response = self.view(request, pk=1).render()
366-
self.assertEqual(response.status_code, status.HTTP_200_OK)
367-
self.assertEqual(response.data, self.data[0])
366+
assert response.status_code == status.HTTP_200_OK
367+
assert response.data == self.data[0]
368368

369369

370370
# Regression test for #285
@@ -394,9 +394,9 @@ def test_create_model_with_auto_now_add_field(self):
394394
data = {'email': 'foobar@example.com', 'content': 'foobar'}
395395
request = factory.post('/', data, format='json')
396396
response = self.view(request).render()
397-
self.assertEqual(response.status_code, status.HTTP_201_CREATED)
397+
assert response.status_code == status.HTTP_201_CREATED
398398
created = self.objects.get(id=1)
399-
self.assertEqual(created.content, 'foobar')
399+
assert created.content == 'foobar'
400400

401401

402402
# Test for particularly ugly regression with m2m in browsable API
@@ -432,7 +432,7 @@ def test_m2m_in_browsable_api(self):
432432
request = factory.get('/', HTTP_ACCEPT='text/html')
433433
view = ExampleView().as_view()
434434
response = view(request).render()
435-
self.assertEqual(response.status_code, status.HTTP_200_OK)
435+
assert response.status_code == status.HTTP_200_OK
436436

437437

438438
class InclusiveFilterBackend(object):
@@ -489,9 +489,9 @@ def test_get_root_view_filters_by_name_with_filter_backend(self):
489489
root_view = RootView.as_view(filter_backends=(InclusiveFilterBackend,))
490490
request = factory.get('/')
491491
response = root_view(request).render()
492-
self.assertEqual(response.status_code, status.HTTP_200_OK)
493-
self.assertEqual(len(response.data), 1)
494-
self.assertEqual(response.data, [{'id': 1, 'text': 'foo'}])
492+
assert response.status_code == status.HTTP_200_OK
493+
assert len(response.data) == 1
494+
assert response.data == [{'id': 1, 'text': 'foo'}]
495495

496496
def test_get_root_view_filters_out_all_models_with_exclusive_filter_backend(self):
497497
"""
@@ -500,8 +500,8 @@ def test_get_root_view_filters_out_all_models_with_exclusive_filter_backend(self
500500
root_view = RootView.as_view(filter_backends=(ExclusiveFilterBackend,))
501501
request = factory.get('/')
502502
response = root_view(request).render()
503-
self.assertEqual(response.status_code, status.HTTP_200_OK)
504-
self.assertEqual(response.data, [])
503+
assert response.status_code == status.HTTP_200_OK
504+
assert response.data == []
505505

506506
def test_get_instance_view_filters_out_name_with_filter_backend(self):
507507
"""
@@ -510,8 +510,8 @@ def test_get_instance_view_filters_out_name_with_filter_backend(self):
510510
instance_view = InstanceView.as_view(filter_backends=(ExclusiveFilterBackend,))
511511
request = factory.get('/1')
512512
response = instance_view(request, pk=1).render()
513-
self.assertEqual(response.status_code, status.HTTP_404_NOT_FOUND)
514-
self.assertEqual(response.data, {'detail': 'Not found.'})
513+
assert response.status_code == status.HTTP_404_NOT_FOUND
514+
assert response.data == {'detail': 'Not found.'}
515515

516516
def test_get_instance_view_will_return_single_object_when_filter_does_not_exclude_it(self):
517517
"""
@@ -520,8 +520,8 @@ def test_get_instance_view_will_return_single_object_when_filter_does_not_exclud
520520
instance_view = InstanceView.as_view(filter_backends=(InclusiveFilterBackend,))
521521
request = factory.get('/1')
522522
response = instance_view(request, pk=1).render()
523-
self.assertEqual(response.status_code, status.HTTP_200_OK)
524-
self.assertEqual(response.data, {'id': 1, 'text': 'foo'})
523+
assert response.status_code == status.HTTP_200_OK
524+
assert response.data == {'id': 1, 'text': 'foo'}
525525

526526
def test_dynamic_serializer_form_in_browsable_api(self):
527527
"""
@@ -530,8 +530,9 @@ def test_dynamic_serializer_form_in_browsable_api(self):
530530
view = DynamicSerializerView.as_view()
531531
request = factory.get('/')
532532
response = view(request).render()
533-
self.assertContains(response, 'field_b')
534-
self.assertNotContains(response, 'field_a')
533+
content = response.content.decode('utf8')
534+
assert 'field_b' in content
535+
assert 'field_a' not in content
535536

536537

537538
class TestGuardedQueryset(TestCase):

0 commit comments

Comments
 (0)