* Generate common/djangoapps import shims for LMS * Generate common/djangoapps import shims for Studio * Stop appending project root to sys.path * Stop appending common/djangoapps to sys.path * Import from common.djangoapps.course_action_state instead of course_action_state * Import from common.djangoapps.course_modes instead of course_modes * Import from common.djangoapps.database_fixups instead of database_fixups * Import from common.djangoapps.edxmako instead of edxmako * Import from common.djangoapps.entitlements instead of entitlements * Import from common.djangoapps.pipline_mako instead of pipeline_mako * Import from common.djangoapps.static_replace instead of static_replace * Import from common.djangoapps.student instead of student * Import from common.djangoapps.terrain instead of terrain * Import from common.djangoapps.third_party_auth instead of third_party_auth * Import from common.djangoapps.track instead of track * Import from common.djangoapps.util instead of util * Import from common.djangoapps.xblock_django instead of xblock_django * Add empty common/djangoapps/__init__.py to fix pytest collection * Fix pylint formatting violations * Exclude import_shims/ directory tree from linting
46 lines
1.6 KiB
Python
46 lines
1.6 KiB
Python
"""
|
|
Unit tests for courseware context_processor
|
|
"""
|
|
|
|
|
|
from django.contrib.auth.models import AnonymousUser
|
|
from mock import Mock
|
|
|
|
from lms.djangoapps.courseware.context_processor import user_timezone_locale_prefs
|
|
from openedx.core.djangoapps.user_api.preferences.api import set_user_preference
|
|
from common.djangoapps.student.tests.factories import UserFactory
|
|
from xmodule.modulestore.tests.django_utils import ModuleStoreTestCase
|
|
|
|
|
|
class UserPrefContextProcessorUnitTest(ModuleStoreTestCase):
|
|
"""
|
|
Unit test for courseware context_processor
|
|
"""
|
|
|
|
def setUp(self):
|
|
super(UserPrefContextProcessorUnitTest, self).setUp()
|
|
|
|
self.user = UserFactory.create()
|
|
self.request = Mock()
|
|
self.request.user = self.user
|
|
|
|
def test_anonymous_user(self):
|
|
self.request.user = AnonymousUser()
|
|
context = user_timezone_locale_prefs(self.request)
|
|
self.assertIsNone(context['user_timezone'])
|
|
self.assertIsNone(context['user_language'])
|
|
|
|
def test_no_timezone_preference(self):
|
|
set_user_preference(self.user, 'pref-lang', 'en')
|
|
context = user_timezone_locale_prefs(self.request)
|
|
self.assertIsNone(context['user_timezone'])
|
|
self.assertIsNotNone(context['user_language'])
|
|
self.assertEqual(context['user_language'], 'en')
|
|
|
|
def test_no_language_preference(self):
|
|
set_user_preference(self.user, 'time_zone', 'Asia/Tokyo')
|
|
context = user_timezone_locale_prefs(self.request)
|
|
self.assertIsNone(context['user_language'])
|
|
self.assertIsNotNone(context['user_timezone'])
|
|
self.assertEqual(context['user_timezone'], 'Asia/Tokyo')
|