def test_default_lang_pref_saved(self, lang): with mock.patch("django.conf.settings.LANGUAGE_CODE", lang): response = self.client.post(self.url, self.params) self.assertEqual(response.status_code, 200) user = User.objects.get(username=self.username) self.assertEqual(UserPreference.get_preference(user, LANGUAGE_KEY), lang)
def test_header_lang_pref_saved(self, lang): response = self.client.post(self.url, self.params, HTTP_ACCEPT_LANGUAGE=lang) self.assertEqual(response.status_code, 200) user = User.objects.get(username=self.username) self.assertEqual(UserPreference.get_preference(user, LANGUAGE_KEY), lang)
def test_set_preference_missing_lang(self): user = UserFactory.create() self.client.login(username=user.username, password='******') response = self.client.post(reverse('lang_pref_set_language')) self.assertEquals(response.status_code, 400) self.assertIsNone(UserPreference.get_preference(user, LANGUAGE_KEY))
def test_set_preference_missing_lang(self): user = UserFactory.create() self.client.login(username=user.username, password='******') response = self.client.post(reverse('lang_pref_set_language')) self.assertEquals(response.status_code, 400) self.assertIsNone(UserPreference.get_preference(user, LANGUAGE_KEY))
def process_request(self, request): """ If a user's UserPreference contains a language preference and there is no language set on the session (i.e. from dark language overrides), use the user's preference. """ if request.user.is_authenticated() and 'django_language' not in request.session: user_pref = UserPreference.get_preference(request.user, LANGUAGE_KEY) if user_pref: request.session['django_language'] = user_pref
def test_discussions_email_digest_pref(self, digest_enabled): with mock.patch.dict("student.models.settings.FEATURES", {"ENABLE_DISCUSSION_EMAIL_DIGEST": digest_enabled}): response = self.client.post(self.url, self.params) self.assertEqual(response.status_code, 200) user = User.objects.get(username=self.username) preference = UserPreference.get_preference(user, NOTIFICATION_PREF_KEY) if digest_enabled: self.assertIsNotNone(preference) else: self.assertIsNone(preference)
def test_set_preference_happy(self): user = UserFactory.create() self.client.login(username=user.username, password='******') lang = 'en' response = self.client.post(reverse('lang_pref_set_language'), {'language': lang}) self.assertEquals(response.status_code, 200) user_pref = UserPreference.get_preference(user, LANGUAGE_KEY) self.assertEqual(user_pref, lang)
def test_set_preference_happy(self): user = UserFactory.create() self.client.login(username=user.username, password='******') lang = 'en' response = self.client.post(reverse('lang_pref_set_language'), {'language': lang}) self.assertEquals(response.status_code, 200) user_pref = UserPreference.get_preference(user, LANGUAGE_KEY) self.assertEqual(user_pref, lang)
def claim_locale(self, data): """ Return the locale for the users based on their preferences. Does not return a value if the users have not set their locale preferences. """ language = UserPreference.get_preference(data['user'], LANGUAGE_KEY) # If the user has no language specified, return the default one. if not language: language = getattr(settings, 'LANGUAGE_CODE') return language
def claim_locale(self, data): """ Return the locale for the users based on their preferences. Does not return a value if the users have not set their locale preferences. """ language = UserPreference.get_preference(data['user'], LANGUAGE_KEY) # If the user has no language specified, return the default one. if not language: language = getattr(settings, 'LANGUAGE_CODE') return language
def get_user_email_language(user): """ Return the language most appropriate for writing emails to user. Returns None if the preference has not been set, or if the user does not exist. """ return UserPreference.get_preference(user, LANGUAGE_KEY)
def get_user_email_language(user): """ Return the language most appropriate for writing emails to user. Returns None if the preference has not been set, or if the user does not exist. """ return UserPreference.get_preference(user, LANGUAGE_KEY)
def test_header_lang_pref_saved(self, lang): response = self.client.post(self.url, self.params, HTTP_ACCEPT_LANGUAGE=lang) user = User.objects.get(username=self.username) self.assertEqual(response.status_code, 200) self.assertEqual(UserPreference.get_preference(user, LANGUAGE_KEY), lang)
def test_default_lang_pref_saved(self, lang): with mock.patch("django.conf.settings.LANGUAGE_CODE", lang): response = self.client.post(self.url, self.params) self.assertEqual(response.status_code, 200) user = User.objects.get(username=self.username) self.assertEqual(UserPreference.get_preference(user, LANGUAGE_KEY), lang)