Хорошо. Решение, которое я нашел, заключается в создании суперпользователя в методе setUp из класса TestCase. Я сделал это так:
def setUp(self):
self.client = Client()
self.user = User.objects.create_superuser(
'testuser',
'test@example.com',
'easy_password',
)
Затем, когда я хочу проверить URL, я делаю это:
def test_search_customers(self):
url = reverse('customer_search')
response = self.client.get(url)
# Not logged user. Must return a 302 HTTP code.
self.assertEquals(response.status_code, 302)
self.assertEquals(response['Location'], 'http://testserver/unauthorized/?next=/search/customers/')
# HERE I LOG IN MY SUPERUSER
self.client.login(username='testuser', password='easy_password')
response = self.client.get(url, follow=True)
# Same URL requested with a logged user with permissions. Must return 200 HTTP code.
self.assertEquals(response.status_code, 200)
Вот что у меня сработало:)
Спасибо всем. Cheers,
Jose