Esempio n. 1
0
    def test_rereview(self, client):
        client.get_product.return_value = {'meta': {'total_count': 0}}
        client.post_product.return_value = {'resource_uri': 'gpuri'}
        client.get_product_bango.return_value = {'meta': {'total_count': 0}}
        client.post_product_bango.return_value = {
            'resource_uri': 'bpruri', 'bango_id': 123}

        form = forms_payments.BangoAccountListForm(
            data={'accounts': self.account.pk}, **self.kwargs)
        assert form.is_valid(), form.errors
        form.save()
        eq_(self.addon.status, amo.STATUS_PUBLIC)
        eq_(RereviewQueue.objects.count(), 1)

        form = forms_payments.BangoAccountListForm(None, **self.kwargs)
        assert form.fields['accounts'].empty_label == None
Esempio n. 2
0
    def test_with_owner_account(self, client):
        self.setup_mock(client)

        user = self.user
        account = self.create_user_account(user)
        assert self.is_owner(user)
        form = forms_payments.BangoAccountListForm(
            data={'accounts': account.pk}, user=user, **self.kwargs)
        eq_(form.current_payment_account, None)
        assert form.is_valid(), form.errors
        form.save()
        form = forms_payments.BangoAccountListForm(None, user=user,
                                                  **self.kwargs)
        eq_(form.fields['accounts'].widget.attrs.get('disabled'), None)
        eq_(form.fields['accounts'].empty_label, None)
        eq_(form.initial['accounts'], account)
Esempio n. 3
0
    def test_with_other_owner_account_existing_account(self, client):
        self.setup_mock(client)

        owner_account = self.associate_owner_account()
        user = self.other
        account = self.create_user_account(user)
        self.make_owner(user)
        assert self.is_owner(user)
        form = forms_payments.BangoAccountListForm(
            data={'accounts': account.pk}, user=user, **self.kwargs)
        eq_(form.current_payment_account, owner_account)
        assert form.is_valid(), form.errors
        form.save()
        form = forms_payments.BangoAccountListForm(None, user=user,
                                                   **self.kwargs)
        eq_(form.fields['accounts'].empty_label, None)
        eq_(form.initial['accounts'], account)
        assert form.current_payment_account is None
Esempio n. 4
0
    def test_set_shared_account(self, client):
        self.setup_mock(client)

        shared = self.create_user_account(self.other, shared=True)
        form = forms_payments.BangoAccountListForm(
            data={'accounts': shared.pk}, user=self.user, **self.kwargs)
        assert form.is_valid()
        form.save()
        eq_(self.addon.app_payment_account.payment_account.pk, shared.pk)
Esempio n. 5
0
    def test_with_shared_account(self, client):
        self.setup_mock(client)

        account = self.create_user_account(self.user)
        shared = self.create_user_account(self.other, shared=True)
        form = forms_payments.BangoAccountListForm(user=self.user,
                                                   **self.kwargs)
        self.assertSetEqual(form.fields['accounts'].queryset,
                            (account, shared))
Esempio n. 6
0
    def associate_owner_account(self, client):
        self.setup_mock(client)

        owner_account = self.create_user_account(self.user)
        form = forms_payments.BangoAccountListForm(
            data={'accounts': owner_account.pk}, user=self.user, **self.kwargs)
        assert form.is_valid(), form.errors
        form.save()
        return owner_account
Esempio n. 7
0
 def test_with_owner_account(self, client):
     user = self.user
     account = self.create_user_account(user)
     assert self.is_owner(user)
     client.get_product.return_value = {'meta': {'total_count': 0}}
     client.post_product.return_value = {'resource_uri': 'gpuri'}
     client.get_product_bango.return_value = {'meta': {'total_count': 0}}
     client.post_product_bango.return_value = {
         'resource_uri': 'bpruri', 'bango_id': 123}
     form = forms_payments.BangoAccountListForm(
         data={'accounts': account.pk}, user=user, **self.kwargs)
     eq_(form.current_payment_account, None)
     assert form.is_valid(), form.errors
     form.save()
     form = forms_payments.BangoAccountListForm(None, user=user,
                                               **self.kwargs)
     eq_(form.fields['accounts'].widget.attrs.get('disabled'), None)
     eq_(form.fields['accounts'].empty_label, None)
     eq_(form.initial['accounts'], account)
Esempio n. 8
0
    def test_admin_account_empty_string(self, client):
        self.setup_mock(client)

        self.associate_owner_account()
        user = self.admin
        assert not self.is_owner(user)
        form = forms_payments.BangoAccountListForm(
            data={'accounts': ''}, user=user, **self.kwargs)
        assert form.fields['accounts'].widget.attrs['disabled'] is not None
        assert not form.is_valid(), form.errors
Esempio n. 9
0
    def test_with_non_owner_admin_account(self, client):
        self.setup_mock(client)

        user = self.admin
        account = self.create_user_account(user)
        assert not self.is_owner(user)
        form = forms_payments.BangoAccountListForm(
            data={'accounts': account.pk}, user=user, **self.kwargs)
        eq_(form.current_payment_account, None)
        assert form.fields['accounts'].widget.attrs['disabled'] is not None
        assert not form.is_valid(), form.errors
Esempio n. 10
0
 def associate_owner_account(self, client):
     client.get_product.return_value = {'meta': {'total_count': 0}}
     client.post_product.return_value = {'resource_uri': 'gpuri'}
     client.get_product_bango.return_value = {'meta': {'total_count': 0}}
     client.post_product_bango.return_value = {
         'resource_uri': 'bpruri', 'bango_id': 123}
     owner_account = self.create_user_account(self.user)
     form = forms_payments.BangoAccountListForm(
         data={'accounts': owner_account.pk}, user=self.user, **self.kwargs)
     assert form.is_valid(), form.errors
     form.save()
     return owner_account
Esempio n. 11
0
    def test_norereview(self, client):
        client.get_product.return_value = {'meta': {'total_count': 0}}
        client.post_product.return_value = {'resource_uri': 'gpuri'}
        client.get_product_bango.return_value = {'meta': {'total_count': 0}}
        client.post_product_bango.return_value = {
            'resource_uri': 'bpruri', 'bango_id': 123}

        self.addon.update(highest_status=amo.STATUS_PENDING)
        form = forms_payments.BangoAccountListForm(
            data={'accounts': self.account.pk}, **self.kwargs)
        assert form.is_valid(), form.errors
        form.save()
        eq_(self.addon.status, amo.STATUS_PENDING)
        eq_(RereviewQueue.objects.count(), 0)
Esempio n. 12
0
    def test_disagreed_tos_rereview(self, client):
        self.account.update(agreed_tos=False)
        client.get_product.return_value = {'meta': {'total_count': 0}}
        client.post_product.return_value = {'resource_uri': 'gpuri'}
        client.get_product_bango.return_value = {'meta': {'total_count': 0}}
        client.post_product_bango.return_value = {
            'resource_uri': 'bpruri', 'bango_id': 123}

        form = forms_payments.BangoAccountListForm(
            data={'accounts': self.account.pk}, **self.kwargs)
        assert not form.is_valid()
        eq_(form.errors['accounts'],
            ['Select a valid choice. That choice is not one of the available '
             'choices.'])
Esempio n. 13
0
 def test_with_non_owner_admin_account(self, client):
     user = self.admin
     account = self.create_user_account(user)
     assert not self.is_owner(user)
     client.get_product.return_value = {'meta': {'total_count': 0}}
     client.post_product.return_value = {'resource_uri': 'gpuri'}
     client.get_product_bango.return_value = {'meta': {'total_count': 0}}
     client.post_product_bango.return_value = {
         'resource_uri': 'bpruri', 'bango_id': 123}
     form = forms_payments.BangoAccountListForm(
         data={'accounts': account.pk}, user=user, **self.kwargs)
     eq_(form.current_payment_account, None)
     assert form.fields['accounts'].widget.attrs['disabled'] is not None
     assert not form.is_valid(), form.errors
Esempio n. 14
0
    def test_admin_account_empty_string(self, client):
        self.associate_owner_account()
        user = self.admin
        assert not self.is_owner(user)
        client.get_product.return_value = {'meta': {'total_count': 0}}
        client.post_product.return_value = {'resource_uri': 'gpuri'}
        client.get_product_bango.return_value = {'meta': {'total_count': 0}}
        client.post_product_bango.return_value = {
            'resource_uri': 'bpruri',
            'bango_id': 123
        }

        form = forms_payments.BangoAccountListForm(data={'accounts': ''},
                                                   user=user,
                                                   **self.kwargs)
        assert form.fields['accounts'].widget.attrs['disabled'] is not None
        assert not form.is_valid(), form.errors