Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

user_tests.py 2.0KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. from django.core.urlresolvers import reverse
  2. from django_dynamic_fixture import get
  3. from oscar.test.testcases import ClientTestCase
  4. from oscar.apps.dashboard.users.views import IndexView
  5. from oscar.core.compat import get_user_model
  6. User = get_user_model()
  7. class IndexViewTests(ClientTestCase):
  8. is_staff = True
  9. active_users_ids = []
  10. inactive_users_ids = []
  11. def setUp(self):
  12. super(IndexViewTests, self).setUp()
  13. for i in range(1, 25):
  14. get(User, is_active=True)
  15. for i in range(1, 25):
  16. get(User, is_active=False)
  17. user_queryset = User.objects.all()
  18. self.active_users_ids = user_queryset.filter(is_active=True).values_list('id', flat=True)
  19. self.inactive_users_ids = user_queryset.filter(is_active=False).values_list('id', flat=True)
  20. def test_user_list_view(self):
  21. response = self.client.get(reverse('dashboard:users-index'))
  22. self.assertInContext(response, 'user_list')
  23. self.assertEquals(len(response.context['user_list']), IndexView.paginate_by)
  24. def test_make_active(self):
  25. params = {'action': 'make_active',
  26. 'selected_user': self.inactive_users_ids}
  27. response = self.client.post(reverse('dashboard:users-index'), params)
  28. ex_inactive = User.objects.get(id=self.inactive_users_ids[10])
  29. self.assertIsRedirect(response)
  30. self.assertTrue(ex_inactive.is_active)
  31. def test_make_inactive(self):
  32. params = {'action': 'make_inactive',
  33. 'selected_user': self.active_users_ids}
  34. response = self.client.post(reverse('dashboard:users-index'), params)
  35. ex_active = User.objects.get(id=self.active_users_ids[10])
  36. self.assertIsRedirect(response)
  37. self.assertFalse(ex_active.is_active)
  38. class DetailViewTests(ClientTestCase):
  39. is_staff = True
  40. def test_user_detail_view(self):
  41. response = self.client.get(reverse('dashboard:user-detail', kwargs={'pk': 1} ))
  42. self.assertInContext(response, 'user')
  43. self.assertIsOk(response)