私はこの声明がこの例外を提起することをテストで宣言しようとしていますが、その例外をインポートすることは不可能であるようです。これは、例えば動作しません:アサートする方法django.contrib.auth.models.DoesNotExist例外を発生させますか?
from rest_framework.test import APITestCase
from rest_framework.test import APIRequestFactory
from CarPooling.views import login, logout
from django.urls import reverse
from django.contrib.auth.models import User, UserManager
from django.contrib.auth import authenticate
from rest_framework.authtoken.models import Token
from CarPooling.models import AccountActivationToken
from rest_framework import status
from django.contrib.auth.models import DoesNotExist
class LoginViewTests(APITestCase):
def test_login(self):
url = '/api/token/'
data = {'email': '[email protected]', 'password': 'testpassword'}
user = create_user('joao', 'testpassword', '[email protected]')
user = User.objects.get()
user.is_active = True
user.save()
response = self.client.post(url, data, format='json')
self.assertEqual(response.status_code, status.HTTP_200_OK)
self.assertEqual(response.data['token'], Token.objects.get(user=user).key)
data = {'email': '[email protected]', 'password': 'tsubasaolivesr'}
response = self.client.post(url, data, format='json')
self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST)
data = {'email': '[email protected]', 'password': 'tsubasaolivesr'}
self.assertRaises(models.DoesNotExist, self.client.post(url, data, format='json'))
テストは、その例外django.auth.contrib.auth.models.DoesNotExistが、私は明示的に起こることになって主張していたとしても、呼び出された文句失敗しました。
'self.assertRaises(models.DoesNotExist'を' self.assertRaises(DoesNotExist、 '? – BorrajaX