def test_release_throws_exception_if_not_ESCROWED(self): payment = Payment(**self.payment_arguments) for state in PAYMENT_STATES: if state == 'ESCROWED': continue payment.state = state with self.assertRaises(poundpay.payments.PaymentReleaseError): payment.release()
def test_release_sets_state_to_released_and_issues_save(self): kwargs = self.payment_arguments kwargs['state'] = 'ESCROWED' payment = Payment(**kwargs) with mock.patch.object(Payment, 'save') as patched_save: payment.release() patched_save.assert_called_once_with() self.assertEqual(payment.state, 'RELEASED')