def test_delete(self): responses.add('DELETE', 'https://api.invoiced.com/transactions/123', status=204) transaction = invoiced.Transaction(self.client, 123) self.assertTrue(transaction.delete())
def test_refund(self): responses.add('POST', 'https://api.invoiced.com/transactions/123/refunds', status=201, json={"id": 456}) transaction = invoiced.Transaction(self.client, 123) refund = transaction.refund(amount=800) self.assertIsInstance(refund, invoiced.Transaction) self.assertEqual(refund.id, 456)
def test_update(self): responses.add('PATCH', 'https://api.invoiced.com/transactions/123', status=200, json={ "id": 123, "amount": 100, "sent": True }) transaction = invoiced.Transaction(self.client, 123) transaction.sent = True self.assertTrue(transaction.save()) self.assertTrue(transaction.sent)
def test_send(self): responses.add('POST', 'https://api.invoiced.com/transactions/123/emails', status=201, json=[{ "id": 4567, "email": "*****@*****.**" }]) transaction = invoiced.Transaction(self.client, 123) emails = transaction.send() self.assertEqual(type(emails), list) self.assertEqual(len(emails), 1) self.assertIsInstance(emails[0], invoiced.Email) self.assertEqual(emails[0].id, 4567)
def test_endpoint(self): transaction = invoiced.Transaction(self.client, 123) self.assertEqual('/transactions/123', transaction.endpoint())
def test_update_no_params(self): transaction = invoiced.Transaction(self.client, 123) self.assertFalse(transaction.save())