Exemple #1
0
 def test_normal(self):
     mocurly_ = mocurly.mocurly()
     mocurly_.start()
     self.assertFalse(mocurly.backend.accounts_backend.has_object(self.base_account_data['account_code']))
     recurly.Account(**self.base_account_data).save()
     self.assertTrue(mocurly.backend.accounts_backend.has_object(self.base_account_data['account_code']))
     mocurly_.stop()
Exemple #2
0
 def test_normal(self):
     mocurly_ = mocurly.mocurly()
     mocurly_.start()
     self.assertFalse(mocurly.backend.accounts_backend.has_object(self.base_account_data['account_code']))
     recurly.Account(**self.base_account_data).save()
     self.assertTrue(mocurly.backend.accounts_backend.has_object(self.base_account_data['account_code']))
     mocurly_.stop()
Exemple #3
0
    def test_timeout_successful_post(self):
        mocurly_ = mocurly.mocurly()
        mocurly_.start()

        # Only timeout on creating transactions
        def timeout_filter(request):
            return request.path.endswith('transactions')
        mocurly_.start_timeout_successful_post(timeout_filter=timeout_filter)

        self.assertFalse(mocurly.backend.accounts_backend.has_object(self.base_account_data['account_code']))
        new_account = recurly.Account(**self.base_account_data)
        new_account.billing_info = recurly.BillingInfo(**self.base_billing_info_data)
        new_account.save()
        self.assertTrue(mocurly.backend.accounts_backend.has_object(self.base_account_data['account_code']))

        self.assertEqual(len(mocurly.backend.transactions_backend.datastore), 0)
        new_transaction = recurly.Transaction(account=new_account, amount_in_cents=20, currency='USD')
        self.assertRaises(ssl.SSLError, new_transaction.save)
        self.assertEqual(len(mocurly.backend.transactions_backend.datastore), 1)

        mocurly_.stop_timeout_successful_post()

        recurly.Transaction(account=new_account, amount_in_cents=20, currency='USD').save()
        self.assertEqual(len(mocurly.backend.transactions_backend.datastore), 2)

        mocurly_.stop()
Exemple #4
0
    def test_timeout_successful_post(self):
        mocurly_ = mocurly.mocurly()
        mocurly_.start()

        # Only timeout on creating transactions
        def timeout_filter(request):
            return request.path.endswith('transactions')
        mocurly_.start_timeout_successful_post(timeout_filter=timeout_filter)

        self.assertFalse(mocurly.backend.accounts_backend.has_object(self.base_account_data['account_code']))
        new_account = recurly.Account(**self.base_account_data)
        new_account.billing_info = recurly.BillingInfo(**self.base_billing_info_data)
        new_account.save()
        self.assertTrue(mocurly.backend.accounts_backend.has_object(self.base_account_data['account_code']))

        self.assertEqual(len(mocurly.backend.transactions_backend.datastore), 0)
        new_transaction = recurly.Transaction(account=new_account, amount_in_cents=20, currency='USD')
        self.assertRaises(recurly.errors.BadGatewayError, new_transaction.save)
        self.assertEqual(len(mocurly.backend.transactions_backend.datastore), 1)

        mocurly_.stop_timeout_successful_post()

        recurly.Transaction(account=new_account, amount_in_cents=20, currency='USD').save()
        self.assertEqual(len(mocurly.backend.transactions_backend.datastore), 2)

        mocurly_.stop()
Exemple #5
0
    def test_timeout_successful_post(self):
        mocurly_ = mocurly.mocurly()
        mocurly_.start()

        mocurly_.start_timeout_successful_post()

        self.assertFalse(
            mocurly.backend.accounts_backend.has_object(
                self.base_account_data['account_code']))
        self.assertRaises(ssl.SSLError,
                          recurly.Account(**self.base_account_data).save)
        self.assertTrue(
            mocurly.backend.accounts_backend.has_object(
                self.base_account_data['account_code']))

        mocurly_.stop_timeout_successful_post()

        self.base_account_data['account_code'] = 'foo'
        self.assertFalse(
            mocurly.backend.accounts_backend.has_object(
                self.base_account_data['account_code']))
        recurly.Account(**self.base_account_data).save()
        self.assertTrue(
            mocurly.backend.accounts_backend.has_object(
                self.base_account_data['account_code']))

        mocurly_.stop()
Exemple #6
0
    def test_selective_timeout(self):
        mocurly_ = mocurly.mocurly()
        mocurly_.start()

        # Only timeout on get requests
        def timeout_filter(request):
            return request.method == 'GET'

        mocurly_.start_timeout(timeout_filter=timeout_filter)

        self.assertFalse(
            mocurly.backend.accounts_backend.has_object(
                self.base_account_data['account_code']))
        recurly.Account(**self.base_account_data).save()
        self.assertTrue(
            mocurly.backend.accounts_backend.has_object(
                self.base_account_data['account_code']))
        self.assertRaises(ssl.SSLError, recurly.Account.get,
                          self.base_account_data['account_code'])

        mocurly_.stop_timeout()

        self.assertEqual(
            recurly.Account.get(
                self.base_account_data['account_code']).account_code,
            self.base_account_data['account_code'])

        mocurly_.stop()
Exemple #7
0
 def test_context_manager(self):
     with mocurly.mocurly():
         self.assertFalse(
             mocurly.backend.accounts_backend.has_object(
                 self.base_account_data['account_code']))
         recurly.Account(**self.base_account_data).save()
         self.assertTrue(
             mocurly.backend.accounts_backend.has_object(
                 self.base_account_data['account_code']))
Exemple #8
0
    def test_timeout(self):
        mocurly_ = mocurly.mocurly()
        mocurly_.start()

        mocurly_.start_timeout()

        self.assertFalse(mocurly.backend.accounts_backend.has_object(self.base_account_data['account_code']))
        self.assertRaises(ssl.SSLError, recurly.Account(**self.base_account_data).save)
        self.assertFalse(mocurly.backend.accounts_backend.has_object(self.base_account_data['account_code']))

        mocurly_.stop_timeout()

        self.assertFalse(mocurly.backend.accounts_backend.has_object(self.base_account_data['account_code']))
        recurly.Account(**self.base_account_data).save()
        self.assertTrue(mocurly.backend.accounts_backend.has_object(self.base_account_data['account_code']))

        mocurly_.stop()
Exemple #9
0
    def test_timeout(self):
        mocurly_ = mocurly.mocurly()
        mocurly_.start()

        mocurly_.start_timeout()

        self.assertFalse(mocurly.backend.accounts_backend.has_object(self.base_account_data['account_code']))
        self.assertRaises(recurly.errors.BadGatewayError, recurly.Account(**self.base_account_data).save)
        self.assertFalse(mocurly.backend.accounts_backend.has_object(self.base_account_data['account_code']))

        mocurly_.stop_timeout()

        self.assertFalse(mocurly.backend.accounts_backend.has_object(self.base_account_data['account_code']))
        recurly.Account(**self.base_account_data).save()
        self.assertTrue(mocurly.backend.accounts_backend.has_object(self.base_account_data['account_code']))

        mocurly_.stop()
Exemple #10
0
    def test_selective_timeout(self):
        mocurly_ = mocurly.mocurly()
        mocurly_.start()

        # Only timeout on get requests
        def timeout_filter(request):
            return request.method == 'GET'

        mocurly_.start_timeout(timeout_filter=timeout_filter)

        self.assertFalse(mocurly.backend.accounts_backend.has_object(self.base_account_data['account_code']))
        recurly.Account(**self.base_account_data).save()
        self.assertTrue(mocurly.backend.accounts_backend.has_object(self.base_account_data['account_code']))
        self.assertRaises(ssl.SSLError, recurly.Account.get, self.base_account_data['account_code'])

        mocurly_.stop_timeout()

        self.assertEqual(recurly.Account.get(self.base_account_data['account_code']).account_code, self.base_account_data['account_code'])

        mocurly_.stop()
Exemple #11
0
 def test_context_manager(self):
     with mocurly.mocurly():
         self.assertFalse(mocurly.backend.accounts_backend.has_object(self.base_account_data['account_code']))
         recurly.Account(**self.base_account_data).save()
         self.assertTrue(mocurly.backend.accounts_backend.has_object(self.base_account_data['account_code']))