예제 #1
0
class KumaAccountAdapterTestCase(UserTestCase):
    localizing_client = True
    rf = RequestFactory()
    message_template = 'socialaccount/messages/account_connected.txt'

    def setUp(self):
        """ extra setUp to make a working session """
        super(KumaAccountAdapterTestCase, self).setUp()
        self.adapter = KumaAccountAdapter()
        self.user = self.user_model.objects.get(username='******')

    def test_account_connected_message(self,
                                       next_url='/',
                                       has_message=False,
                                       extra_tags=''):
        """
        Test that the account connection message depends on the next URL.

        https://bugzil.la/1054461
        """
        request = self.rf.get('/')
        request.user = self.user
        session = self.client.session
        session['sociallogin_next_url'] = next_url
        session.save()
        request.session = session
        request.LANGUAGE_CODE = 'en-US'
        messages = self.get_messages(request)
        self.adapter.add_message(request,
                                 django_messages.INFO,
                                 self.message_template,
                                 extra_tags=extra_tags)

        queued_messages = list(messages)
        if has_message:
            assert len(queued_messages) == 1
            message_data = queued_messages[0]
            assert message_data.level == django_messages.SUCCESS
            assert 'connected' in message_data.message
        else:
            assert not queued_messages
        return queued_messages

    def test_account_connected_message_user_edit(self):
        """Connection message appears if the profile edit is the next page."""
        next_url = reverse('users.user_edit',
                           kwargs={'username': self.user.username},
                           locale='en-US')
        messages = self.test_account_connected_message(next_url, True)
        assert messages[0].tags == 'account success'

    def test_extra_tags(self):
        """Extra tags can be added to the message."""
        next_url = reverse('users.user_edit',
                           kwargs={'username': self.user.username},
                           locale='en-US')
        messages = self.test_account_connected_message(next_url,
                                                       True,
                                                       extra_tags='congrats')
        assert messages[0].tags == 'congrats account success'
예제 #2
0
class KumaAccountAdapterTestCase(UserTestCase):
    localizing_client = True
    rf = RequestFactory()
    message_template = 'socialaccount/messages/account_connected.txt'

    def setUp(self):
        """ extra setUp to make a working session """
        super(KumaAccountAdapterTestCase, self).setUp()
        self.adapter = KumaAccountAdapter()
        self.user = self.user_model.objects.get(username='******')

    def test_account_connected_message(
            self, next_url='/', has_message=False, extra_tags=''):
        """
        Test that the account connection message depends on the next URL.

        https://bugzil.la/1054461
        """
        request = self.rf.get('/')
        request.user = self.user
        session = self.client.session
        session['sociallogin_next_url'] = next_url
        session.save()
        request.session = session
        request.LANGUAGE_CODE = 'en-US'
        messages = self.get_messages(request)
        self.adapter.add_message(request, django_messages.INFO,
                                 self.message_template, extra_tags=extra_tags)

        queued_messages = list(messages)
        if has_message:
            assert len(queued_messages) == 1
            message_data = queued_messages[0]
            assert message_data.level == django_messages.SUCCESS
            assert 'connected' in message_data.message
        else:
            assert not queued_messages
        return queued_messages

    def test_account_connected_message_user_edit(self):
        """Connection message appears if the profile edit is the next page."""
        next_url = reverse('users.user_edit',
                           kwargs={'username': self.user.username},
                           locale='en-US')
        messages = self.test_account_connected_message(next_url, True)
        assert messages[0].tags == 'account success'

    def test_account_connected_message_connection_page(self):
        """Message appears on the connections page (bug 1229906)."""
        next_url = reverse('socialaccount_connections')
        self.test_account_connected_message(next_url, True)

    def test_extra_tags(self):
        """Extra tags can be added to the message."""
        next_url = reverse('socialaccount_connections')
        messages = self.test_account_connected_message(next_url, True,
                                                       extra_tags='congrats')
        assert messages[0].tags == 'congrats account success'
예제 #3
0
class KumaAccountAdapterTestCase(UserTestCase):
    rf = RequestFactory()
    message_template = "socialaccount/messages/account_connected.txt"

    def setUp(self):
        """ extra setUp to make a working session """
        super(KumaAccountAdapterTestCase, self).setUp()
        self.adapter = KumaAccountAdapter()
        self.user = self.user_model.objects.get(username="******")

    def test_account_connected_message(self,
                                       next_url="/",
                                       has_message=False,
                                       extra_tags=""):
        """
        Test that the account connection message depends on the next URL.

        https://bugzil.la/1054461
        """
        request = self.rf.get("/")
        request.user = self.user
        session = self.client.session
        session["sociallogin_next_url"] = next_url
        session.save()
        request.session = session
        request.LANGUAGE_CODE = "en-US"
        messages = self.get_messages(request)
        self.adapter.add_message(request,
                                 django_messages.INFO,
                                 self.message_template,
                                 extra_tags=extra_tags)

        queued_messages = list(messages)
        if has_message:
            assert len(queued_messages) == 1
            message_data = queued_messages[0]
            assert message_data.level == django_messages.SUCCESS
            assert "connected" in message_data.message
        else:
            assert not queued_messages
        return queued_messages

    def test_account_connected_message_user_edit(self):
        """Connection message appears if the profile edit is the next page."""
        next_url = reverse("users.user_edit",
                           kwargs={"username": self.user.username})
        messages = self.test_account_connected_message(next_url, True)
        assert messages[0].tags == "account success"

    def test_extra_tags(self):
        """Extra tags can be added to the message."""
        next_url = reverse("users.user_edit",
                           kwargs={"username": self.user.username})
        messages = self.test_account_connected_message(next_url,
                                                       True,
                                                       extra_tags="congrats")
        assert messages[0].tags == "congrats account success"
예제 #4
0
class KumaAccountAdapterTestCase(UserTestCase):
    localizing_client = True
    rf = RequestFactory()

    def setUp(self):
        """ extra setUp to make a working session """
        super(KumaAccountAdapterTestCase, self).setUp()
        self.adapter = KumaAccountAdapter()

    @attr('bug1054461')
    def test_account_connected_message(self):
        """ https://bugzil.la/1054461 """
        message_template = 'socialaccount/messages/account_connected.txt'
        request = self.rf.get('/')

        # first check for the case in which the next url in the account
        # connection process is the frontpage, there shouldn't be a message
        session = self.client.session
        session['sociallogin_next_url'] = '/'
        session.save()
        request.session = session
        request.user = User.objects.get(username='******')
        request.locale = 'en-US'
        messages = self.get_messages(request)

        self.adapter.add_message(request, django_messages.INFO,
                                 message_template)
        eq_(len(messages), 0)

        # secondly check for the case in which the next url in the connection
        # process is the profile edit page, there should be a message
        session = self.client.session
        next_url = reverse('users.profile_edit',
                           kwargs={'username': request.user.username},
                           locale=request.locale)
        session['sociallogin_next_url'] = next_url
        session.save()
        request.session = session
        messages = self.get_messages(request)

        self.adapter.add_message(request, django_messages.INFO,
                                 message_template)
        queued_messages = list(messages)
        eq_(len(queued_messages), 1)
        eq_(django_messages.SUCCESS, queued_messages[0].level)
        ok_('connected' in queued_messages[0].message)
예제 #5
0
class KumaAccountAdapterTestCase(UserTestCase):
    localizing_client = True
    rf = RequestFactory()

    def setUp(self):
        """ extra setUp to make a working session """
        super(KumaAccountAdapterTestCase, self).setUp()
        self.adapter = KumaAccountAdapter()

    @attr('bug1054461')
    def test_account_connected_message(self):
        """ https://bugzil.la/1054461 """
        message_template = 'socialaccount/messages/account_connected.txt'
        request = self.rf.get('/')

        # first check for the case in which the next url in the account
        # connection process is the frontpage, there shouldn't be a message
        session = self.client.session
        session['sociallogin_next_url'] = '/'
        session.save()
        request.session = session
        request.user = User.objects.get(username='******')
        request.locale = 'en-US'
        messages = self.get_messages(request)

        self.adapter.add_message(request, django_messages.INFO,
                                 message_template)
        eq_(len(messages), 0)

        # secondly check for the case in which the next url in the connection
        # process is the profile edit page, there should be a message
        session = self.client.session
        next_url = reverse('users.profile_edit',
                           kwargs={'username': request.user.username},
                           locale=request.locale)
        session['sociallogin_next_url'] = next_url
        session.save()
        request.session = session
        messages = self.get_messages(request)

        self.adapter.add_message(request, django_messages.INFO,
                                 message_template)
        queued_messages = list(messages)
        eq_(len(queued_messages), 1)
        eq_(django_messages.SUCCESS, queued_messages[0].level)
        ok_('connected' in queued_messages[0].message)
예제 #6
0
 def setUp(self):
     """ extra setUp to make a working session """
     super(KumaAccountAdapterTestCase, self).setUp()
     self.adapter = KumaAccountAdapter()
예제 #7
0
 def setUp(self):
     """ extra setUp to make a working session """
     super(KumaAccountAdapterTestCase, self).setUp()
     self.adapter = KumaAccountAdapter()
     self.user = self.user_model.objects.get(username='******')
예제 #8
0
 def setUp(self):
     """ extra setUp to make a working session """
     super(KumaAccountAdapterTestCase, self).setUp()
     self.adapter = KumaAccountAdapter()
     self.user = self.user_model.objects.get(username='******')
예제 #9
0
 def setUp(self):
     """ extra setUp to make a working session """
     super(KumaAccountAdapterTestCase, self).setUp()
     self.adapter = KumaAccountAdapter()