Only allow ecommerce checkout if user is also activated
This commit is contained in:
@@ -5,6 +5,8 @@ from mock import patch
|
||||
|
||||
from commerce.utils import audit_log, EcommerceService
|
||||
from commerce.models import CommerceConfiguration
|
||||
from django.test.client import RequestFactory
|
||||
from student.tests.factories import UserFactory
|
||||
|
||||
|
||||
class AuditLogTests(TestCase):
|
||||
@@ -25,6 +27,10 @@ class EcommerceServiceTests(TestCase):
|
||||
SKU = 'TESTSKU'
|
||||
|
||||
def setUp(self):
|
||||
self.request_factory = RequestFactory()
|
||||
self.user = UserFactory.create()
|
||||
self.request = self.request_factory.get("foo")
|
||||
self.request.user = self.user
|
||||
CommerceConfiguration.objects.create(
|
||||
checkout_on_ecommerce_service=True,
|
||||
single_course_checkout_page='/test_basket/'
|
||||
@@ -33,20 +39,20 @@ class EcommerceServiceTests(TestCase):
|
||||
|
||||
def test_is_enabled(self):
|
||||
"""Verify that is_enabled() returns True when ecomm checkout is enabled. """
|
||||
is_enabled = EcommerceService().is_enabled()
|
||||
is_enabled = EcommerceService().is_enabled(self.request)
|
||||
self.assertTrue(is_enabled)
|
||||
|
||||
config = CommerceConfiguration.current()
|
||||
config.checkout_on_ecommerce_service = False
|
||||
config.save()
|
||||
is_not_enabled = EcommerceService().is_enabled()
|
||||
is_not_enabled = EcommerceService().is_enabled(self.request)
|
||||
self.assertFalse(is_not_enabled)
|
||||
|
||||
@patch('openedx.core.djangoapps.theming.helpers.is_request_in_themed_site')
|
||||
def test_is_enabled_for_microsites(self, is_microsite):
|
||||
"""Verify that is_enabled() returns False if used for a microsite."""
|
||||
is_microsite.return_value = True
|
||||
is_not_enabled = EcommerceService().is_enabled()
|
||||
is_not_enabled = EcommerceService().is_enabled(self.request)
|
||||
self.assertFalse(is_not_enabled)
|
||||
|
||||
@override_settings(ECOMMERCE_PUBLIC_URL_ROOT='http://ecommerce_url')
|
||||
|
||||
Reference in New Issue
Block a user