/boto-2.5.2/tests/fps/test.py
Python | 100 lines | 83 code | 16 blank | 1 comment | 7 complexity | ae5591563bc0972907c81d275ec6be72 MD5 | raw file
- #!/usr/bin/env python
- from tests.unit import unittest
- import sys
- import os
- import os.path
- simple = True
- advanced = False
- if __name__ == "__main__":
- devpath = os.path.relpath(os.path.join('..', '..'),
- start=os.path.dirname(__file__))
- sys.path = [devpath] + sys.path
- print '>>> advanced FPS tests; using local boto sources'
- advanced = True
- from boto.fps.connection import FPSConnection
- from boto.fps.response import ComplexAmount
- class FPSTestCase(unittest.TestCase):
- def setUp(self):
- self.fps = FPSConnection(host='fps.sandbox.amazonaws.com')
- if advanced:
- self.activity = self.fps.get_account_activity(\
- StartDate='2012-01-01')
- result = self.activity.GetAccountActivityResult
- self.transactions = result.Transaction
- @unittest.skipUnless(simple, "skipping simple test")
- def test_get_account_balance(self):
- response = self.fps.get_account_balance()
- self.assertTrue(hasattr(response, 'GetAccountBalanceResult'))
- self.assertTrue(hasattr(response.GetAccountBalanceResult,
- 'AccountBalance'))
- accountbalance = response.GetAccountBalanceResult.AccountBalance
- self.assertTrue(hasattr(accountbalance, 'TotalBalance'))
- self.assertIsInstance(accountbalance.TotalBalance, ComplexAmount)
- self.assertTrue(hasattr(accountbalance, 'AvailableBalances'))
- availablebalances = accountbalance.AvailableBalances
- self.assertTrue(hasattr(availablebalances, 'RefundBalance'))
- @unittest.skipUnless(simple, "skipping simple test")
- def test_complex_amount(self):
- response = self.fps.get_account_balance()
- accountbalance = response.GetAccountBalanceResult.AccountBalance
- asfloat = float(accountbalance.TotalBalance.Value)
- self.assertIn('.', str(asfloat))
- @unittest.skipUnless(simple, "skipping simple test")
- def test_required_arguments(self):
- with self.assertRaises(KeyError):
- self.fps.write_off_debt(AdjustmentAmount=123.45)
- @unittest.skipUnless(simple, "skipping simple test")
- def test_cbui_url(self):
- inputs = {
- 'transactionAmount': 123.45,
- 'pipelineName': 'SingleUse',
- 'returnURL': 'https://localhost/',
- 'paymentReason': 'a reason for payment',
- 'callerReference': 'foo',
- }
- result = self.fps.cbui_url(**inputs)
- print "cbui_url() yields {0}".format(result)
- @unittest.skipUnless(simple, "skipping simple test")
- def test_get_account_activity(self):
- response = self.fps.get_account_activity(StartDate='2012-01-01')
- self.assertTrue(hasattr(response, 'GetAccountActivityResult'))
- result = response.GetAccountActivityResult
- self.assertTrue(hasattr(result, 'BatchSize'))
- try:
- int(result.BatchSize)
- except:
- self.assertTrue(False)
- @unittest.skipUnless(advanced, "skipping advanced test")
- def test_get_transaction(self):
- assert len(self.transactions)
- transactionid = self.transactions[0].TransactionId
- result = self.fps.get_transaction(TransactionId=transactionid)
- self.assertTrue(hasattr(result.GetTransactionResult, 'Transaction'))
- @unittest.skip('cosmetic')
- def test_bad_request(self):
- try:
- self.fps.write_off_debt(CreditInstrumentId='foo',
- AdjustmentAmount=123.45)
- except Exception, e:
- print e
- @unittest.skip('cosmetic')
- def test_repr(self):
- print self.fps.get_account_balance()
- if __name__ == "__main__":
- unittest.main()