擅长:python、mysql、java
<p>你可以在不同的测试中分开每个案例。例如:</p>
<pre><code>class AuthenticateCredentialsTest(TestCase):
def setUp(self):
self.ExpiringTokenAuth = ExpiringTokenAuthentication()
self.token = ExpiringToken.objects.create(key="valid_key")
def tearDown(self):
del self.ExpiringTokenAuth
del self.token
def test_for_non_existent_token(self):
with self.assertRaises(exceptions.AuthenticationFailed) as ea:
self.ExpiringTokenAuth.authenticate_credentials('invalid_key')
def test_for_user_inactive(self):
user = <UserModel>.objects.create(is_active=False, **params) # Create your own inactive user
self.token.user = user
self.token.save()
with self.assertRaises(exceptions.AuthenticationFailed) as ea:
self.ExpiringTokenAuth.authenticate_credentials('valid_key')
def test_for_has_expired(self):
self.token.expired = True # Make the method has_expired return True
self.token.save()
with self.assertRaises(exceptions.AuthenticationFailed) as ea:
self.ExpiringTokenAuth.authenticate_credentials('valid_key')
</code></pre>