Exemple #1
0
    def test_update_session_lang_not_user_preference(self):

        request = Mock()
        request.session = {}

        user = Mock()
        with self.settings(DEFAULT_LANGUAGE='invented'):
            with patch('wirecloud.platform.preferences.models.PlatformPreference') as platform_preference_mock:
                platform_preference_mock.objects.filter.return_value = []
                update_session_lang(request, user)

        self.assertEqual(request.session[LANGUAGE_SESSION_KEY], 'invented')
Exemple #2
0
    def test_update_session_lang_not_user_preference(self):

        request = Mock()
        request.session = {}

        user = Mock()
        with self.settings(DEFAULT_LANGUAGE='invented'):
            with patch('wirecloud.platform.preferences.models.PlatformPreference') as platform_preference_mock:
                platform_preference_mock.objects.filter.return_value = []
                update_session_lang(request, user)

        self.assertEqual(request.session[LANGUAGE_SESSION_KEY], 'invented')
Exemple #3
0
    def test_update_session_lang_default_browser(self):

        request = Mock()
        request.session = {}

        user = Mock()
        with self.settings(DEFAULT_LANGUAGE='browser', LANGUAGES=(('en', 'English'),)):
            with patch('wirecloud.platform.preferences.models.PlatformPreference') as platform_preference_mock:
                lang_pref_mock = Mock()
                lang_pref_mock.value = 'default'
                platform_preference_mock.objects.filter.return_value = [lang_pref_mock]
                update_session_lang(request, user)

        self.assertNotIn(LANGUAGE_SESSION_KEY, request.session)
Exemple #4
0
    def test_update_session_lang_invalid_user_preference(self):

        request = Mock()
        request.session = {LANGUAGE_SESSION_KEY: 'es'}

        user = Mock()
        with self.settings(DEFAULT_LANGUAGE='invented', LANGUAGES=(('es', 'Spanish'),)):
            with patch('wirecloud.platform.preferences.models.PlatformPreference') as platform_preference_mock:
                lang_pref_mock = Mock()
                lang_pref_mock.value = 'invalid'
                platform_preference_mock.objects.filter.return_value = [lang_pref_mock]
                update_session_lang(request, user)

        self.assertEqual(request.session[LANGUAGE_SESSION_KEY], 'invented')
Exemple #5
0
    def test_update_session_lang_default_browser(self):

        request = Mock()
        request.session = {}

        user = Mock()
        with self.settings(DEFAULT_LANGUAGE='browser', LANGUAGES=(('en', 'English'),)):
            with patch('wirecloud.platform.preferences.models.PlatformPreference') as platform_preference_mock:
                lang_pref_mock = Mock()
                lang_pref_mock.value = 'default'
                platform_preference_mock.objects.filter.return_value = [lang_pref_mock]
                update_session_lang(request, user)

        self.assertNotIn(LANGUAGE_SESSION_KEY, request.session)
Exemple #6
0
    def test_update_session_lang_invalid_user_preference(self):

        request = Mock()
        request.session = {LANGUAGE_SESSION_KEY: 'es'}

        user = Mock()
        with self.settings(DEFAULT_LANGUAGE='invented', LANGUAGES=(('es', 'Spanish'),)):
            with patch('wirecloud.platform.preferences.models.PlatformPreference') as platform_preference_mock:
                lang_pref_mock = Mock()
                lang_pref_mock.value = 'invalid'
                platform_preference_mock.objects.filter.return_value = [lang_pref_mock]
                update_session_lang(request, user)

        self.assertEqual(request.session[LANGUAGE_SESSION_KEY], 'invented')
Exemple #7
0
def setup_language_from_preferences(sender, **kwargs):
    update_session_lang(kwargs['request'], kwargs['user'])