это на Django 1.6Джанго Unit Testing Утверждайте ошибку
def test_perfil_password_validates_new_passwords(self):
self.client.login(username='[email protected]', password='test')
resp = self.client.post('/perfil/password/',
json.dumps({'oldpassword': 'test',
'newPassword1': 'wrong',
'newPassword2': 'nuevo'}
),
'text/json',
HTTP_X_REQUESTED_WITH='XMLHttpRequest')
self.assertEqual(resp.status_code, 400)
ЭТО РАБОТАЕТ и это выход:
Creating test database for alias 'default'... .
----------------------------------------------------------------------
Ran 1 test in 0.273s
OK
Теперь, если я добавлю этот Assert
self.assertContains(resp, '"error":')
Creating test database for alias 'default'... F
======================================================================
FAIL: test_perfil_password_validates_new_passwords (users.tests.PerfilLoggedTestCase)
----------------------------------------------------------------------
Traceback (most recent call last): File "/.../src/users/tests.py",
line 141, in test_perfil_password_validates_new_passwords
self.assertContains(resp, '"error":')
File "/usr/local/lib/python2.7/dist-packages/django/test/testcases.py", line 327,
in assertContains
" (expected %d)" % (response.status_code, status_code))
AssertionError: Couldn't retrieve content: Response code was 400 (expected 200)
----------------------------------------------------------------------
Ran 1 test in 0.241s
FAILED (failures=1)
I не знаю, почему это ожидает 200, или почему это дает мне assertionError
Я могу даже распечатать контент, так что он есть. Что мне не хватает?
спасибо, я все дни s имеет проблемы со скрытыми значениями по умолчанию в django ... – osueboy