diff --git a/payment_paypal/indico_payment_paypal/controllers.py b/payment_paypal/indico_payment_paypal/controllers.py index dba43f7..4e576f5 100644 --- a/payment_paypal/indico_payment_paypal/controllers.py +++ b/payment_paypal/indico_payment_paypal/controllers.py @@ -54,8 +54,7 @@ class RHPaypalIPN(RH): raise BadRequest def _process(self): - if not self._verify_business(): - return + self._verify_business() verify_params = list(chain(IPN_VERIFY_EXTRA_PARAMS, request.form.iteritems())) result = requests.post(current_plugin.settings.get('url'), data=verify_params).text if result != 'VERIFIED': diff --git a/payment_paypal/tests/controllers_test.py b/payment_paypal/tests/controllers_test.py index be92803..2a56bec 100644 --- a/payment_paypal/tests/controllers_test.py +++ b/payment_paypal/tests/controllers_test.py @@ -75,7 +75,6 @@ def test_ipn_is_transaction_duplicated(mocker, txn_id, payment_status, expected) @pytest.mark.usefixtures('db', 'request_context') @pytest.mark.parametrize('fail', ( - 'business', 'verify', 'dup_txn', 'fail', @@ -89,7 +88,6 @@ def test_ipn_process(mocker, fail): post = mocker.patch('indico_payment_paypal.controllers.requests.post') post.return_value.text = 'INVALID' if fail == 'verify' else 'VERIFIED' rh = RHPaypalIPN() - rh._verify_business = lambda: fail != 'business' rh._is_transaction_duplicated = lambda: fail == 'dup_txn' rh.event = MagicMock(id=1) rh.registrant = MagicMock() @@ -99,8 +97,8 @@ def test_ipn_process(mocker, fail): request.view_args = {'confId': rh.event.id} request.args = {'registrantId': '1'} request.form = {'payment_status': payment_status, 'txn_id': '12345', 'mc_gross': amount, - 'mc_currency': 'EUR'} + 'mc_currency': 'EUR', 'business': 'foo@bar.com'} with PaypalPaymentPlugin.instance.plugin_context(): rh._process() - assert post.called == (fail != 'business') + assert post.called assert rt.called == (fail is None)