From 2156a8831751698501f6c19efcb09d1c642da562 Mon Sep 17 00:00:00 2001 From: Benjamin Dauvergne Date: Wed, 14 Oct 2020 11:31:20 +0200 Subject: [PATCH 2/3] misc: declare an optional method on Payment, payment_status(**kwargs) Set as None to ease checks by client code of the availability of this method. --- eopayment/__init__.py | 5 +++++ eopayment/common.py | 2 ++ 2 files changed, 7 insertions(+) diff --git a/eopayment/__init__.py b/eopayment/__init__.py index 3f04451..22b5943 100644 --- a/eopayment/__init__.py +++ b/eopayment/__init__.py @@ -232,3 +232,8 @@ class Payment(object): @property def has_free_transaction_id(self): return self.backend.has_free_transaction_id + + def payment_status(self, transaction_id, **kwargs): + 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) diff --git a/eopayment/common.py b/eopayment/common.py index b69d004..4d59229 100644 --- a/eopayment/common.py +++ b/eopayment/common.py @@ -185,6 +185,8 @@ 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', -- 2.29.1