From dbb2301eb54d27e6a1a7f0d99b4a48b083513881 Mon Sep 17 00:00:00 2001 From: Benjamin Dauvergne Date: Sat, 5 Dec 2020 09:16:30 +0100 Subject: [PATCH] misc: transform Payment.payment_status into a property (#49148) --- eopayment/__init__.py | 4 ++++ eopayment/common.py | 2 -- tests/test_base_payment.py | 4 +--- tests/test_payfip_ws.py | 1 + 4 files changed, 6 insertions(+), 5 deletions(-) diff --git a/eopayment/__init__.py b/eopayment/__init__.py index c539a42..49fa1be 100644 --- a/eopayment/__init__.py +++ b/eopayment/__init__.py @@ -238,3 +238,7 @@ class Payment(object): if not self.backend.payment_status: raise NotImplementedError('payment_status is not implemented on this backend') return self.backend.payment_status(transaction_id=transaction_id, **kwargs) + + @property + def has_payment_status(self): + return hasattr(self.backend, 'payment_status') diff --git a/eopayment/common.py b/eopayment/common.py index 13af15e..3a03f17 100644 --- a/eopayment/common.py +++ b/eopayment/common.py @@ -196,8 +196,6 @@ class PaymentCommon(object): amount = amount.to_integral_value(ROUND_DOWN) return str(amount) - payment_status = None - class Form(object): def __init__(self, url, method, fields, encoding='utf-8', diff --git a/tests/test_base_payment.py b/tests/test_base_payment.py index 5d85462..f1658f0 100644 --- a/tests/test_base_payment.py +++ b/tests/test_base_payment.py @@ -112,6 +112,4 @@ def test_get_parameters(monkeypatch): def test_payment_status(monkeypatch): _, payment = do_mock_backend(monkeypatch) - - with pytest.raises(NotImplementedError): - payment.payment_status('whatever') + assert not payment.has_payment_status diff --git a/tests/test_payfip_ws.py b/tests/test_payfip_ws.py index edb081a..dfc1671 100644 --- a/tests/test_payfip_ws.py +++ b/tests/test_payfip_ws.py @@ -216,6 +216,7 @@ def test_get_info_paiement_P1(payfip, freezer): @set_history_name('test_get_info_paiement_P1') def test_P1_and_payment_status(history, backend): + assert backend.has_payment_status response = backend.payment_status(transaction_id='cc0cb210-1cd4-11ea-8cca-0213ad91a103') assert response.result == eopayment.EXPIRED