Reputation: 23
I'm trying to avoid code duplication so I want to import login from users/test to the ordering/test where I need to test different views that have @login_required.
users/test.py
User = get_user_model()
class UserBaseTest(TestCase):
def setUp(self):
self.user = User.objects.create_user(
username='testuser',
password='testpass',
email='[email protected]',
phone_number='3401234567'
)
def test_login(self):
logged_in = self.client.login(username='testuser', password='testpass')
self.assertTrue(logged_in, "Login failed in UserBaseTest")
ordering/test.py
class OrderTest(UserBaseTest):
def test_view(self):
self.test_login()
response = self.client.get(reverse('homepage'), follow=True)
self.assertRedirects(response, self.order_url)
self.assertTemplateUsed(response, 'ordering/ordering.html')
If I ran py manage.py test users
no errors and no failures were elevated, but with py manage.py test ordering
it gave me:
self.assertTrue(logged_in, "Login failed in UserBaseTest")
AssertionError: False is not true : Login failed in UserBaseTest
Upvotes: 0
Views: 36