def test_clean_capture(): # Amount should be a positive number payment = Mock() amount = Decimal("0.00") with pytest.raises(PaymentError): clean_capture(payment, amount) # Payment cannot be captured payment = Mock(can_capture=Mock(return_value=False)) amount = Decimal("1.00") with pytest.raises(PaymentError): clean_capture(payment, amount) # Amount is larger than payment's total payment = Mock( can_capture=Mock(return_value=True), total=Decimal("1.00"), captured_amount=Decimal("0.00"), ) amount = Decimal("2.00") with pytest.raises(PaymentError): clean_capture(payment, amount) amount = Decimal("2.00") payment = Mock( can_capture=Mock(return_value=True), total=amount, captured_amount=Decimal("0.00"), ) clean_capture(payment, amount)
def test_clean_capture(): # Amount should be a positive number payment = Mock() amount = Decimal("0.00") with pytest.raises(PaymentError): clean_capture(payment, amount) # Payment cannot be captured payment = Mock(can_capture=Mock(return_value=False)) amount = Decimal("1.00") with pytest.raises(PaymentError): clean_capture(payment, amount) # Amount is larger than payment's total payment = Mock( can_capture=Mock(return_value=True), total=Decimal("1.00"), captured_amount=Decimal("0.00"), ) amount = Decimal("2.00") with pytest.raises(PaymentError): clean_capture(payment, amount) amount = Decimal("2.00") payment = Mock( can_capture=Mock(return_value=True), total=amount, captured_amount=Decimal("0.00"), ) clean_capture(payment, amount)