diff --git a/eopayment/__init__.py b/eopayment/__init__.py index 245c5e2..aab050f 100644 --- a/eopayment/__init__.py +++ b/eopayment/__init__.py @@ -164,8 +164,9 @@ class Payment(object): kwargs['capture_day'] = capture_day for param in kwargs: - # encode all input params to unicode - kwargs[param] = force_text(kwargs[param]) + # encode all but bool input params to unicode + if not isinstance(kwargs[param], bool): + kwargs[param] = force_text(kwargs[param]) return self.backend.request(amount, **kwargs) def response(self, query_string, **kwargs): diff --git a/tests/test_paybox.py b/tests/test_paybox.py index 577825e..c251322 100644 --- a/tests/test_paybox.py +++ b/tests/test_paybox.py @@ -85,7 +85,7 @@ class PayboxTests(TestCase): amount = '19.99' transaction_id, kind, what = backend.request( Decimal(amount), email=email, orderid=order_id, - transaction_id=transaction, time=time) + transaction_id=transaction, time=time, manual_validation=False) self.assertEqual(kind, eopayment.FORM) self.assertEqual(transaction_id, '1234') root = ET.fromstring(str(what)) diff --git a/tests/test_systempayv2.py b/tests/test_systempayv2.py index 6dcb29f..240f936 100644 --- a/tests/test_systempayv2.py +++ b/tests/test_systempayv2.py @@ -143,3 +143,7 @@ def test_manual_validation(): data['manual_validation'] = True transaction_id, f, form = backend.request(**data.copy()) assert get_field(form, 'vads_validation_mode')['value'] == '1' + + data['manual_validation'] = False + transaction_id, f, form = backend.request(**data.copy()) + assert get_field(form, 'vads_validation_mode')['value'] == ''