Added some comments and improved the test code
This commit is contained in:
		
					parent
					
						
							
								1073b25a94
							
						
					
				
			
			
				commit
				
					
						3ef34d84a8
					
				
			
		
					 1 changed files with 23 additions and 12 deletions
				
			
		| 
						 | 
				
			
			@ -1,15 +1,16 @@
 | 
			
		|||
from django.test import TestCase
 | 
			
		||||
from django.test import Client
 | 
			
		||||
from django.http.request import HttpRequest
 | 
			
		||||
 | 
			
		||||
from model_mommy import mommy
 | 
			
		||||
from utils.stripe_utils import StripeUtils
 | 
			
		||||
import stripe
 | 
			
		||||
from django.conf import settings
 | 
			
		||||
from datacenterlight.models import StripePlan
 | 
			
		||||
import uuid
 | 
			
		||||
from unittest.mock import patch
 | 
			
		||||
 | 
			
		||||
import stripe
 | 
			
		||||
from django.conf import settings
 | 
			
		||||
from django.http.request import HttpRequest
 | 
			
		||||
from django.test import Client
 | 
			
		||||
from django.test import TestCase
 | 
			
		||||
from model_mommy import mommy
 | 
			
		||||
 | 
			
		||||
from datacenterlight.models import StripePlan
 | 
			
		||||
from utils.stripe_utils import StripeUtils
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class BaseTestCase(TestCase):
 | 
			
		||||
    """
 | 
			
		||||
| 
						 | 
				
			
			@ -137,6 +138,15 @@ class StripePlanTestCase(TestStripeCustomerDescription):
 | 
			
		|||
 | 
			
		||||
    @patch('utils.stripe_utils.logger')
 | 
			
		||||
    def test_create_duplicate_plans_error_handling(self, mock_logger):
 | 
			
		||||
        """
 | 
			
		||||
        Test details:
 | 
			
		||||
            1. Create a test plan in Stripe with a particular id
 | 
			
		||||
            2. Try to recreate the plan with the same id
 | 
			
		||||
            3. The code should be able to handle this
 | 
			
		||||
 | 
			
		||||
        :param mock_logger:
 | 
			
		||||
        :return:
 | 
			
		||||
        """
 | 
			
		||||
        stripe_utils = StripeUtils()
 | 
			
		||||
        unique_id = str(uuid.uuid4().hex)
 | 
			
		||||
        new_plan_id_str = 'test-plan-{}'.format(unique_id)
 | 
			
		||||
| 
						 | 
				
			
			@ -146,8 +156,7 @@ class StripePlanTestCase(TestStripeCustomerDescription):
 | 
			
		|||
        self.assertEqual(stripe_plan.get('response_object').stripe_plan_id, new_plan_id_str)
 | 
			
		||||
 | 
			
		||||
        # Test creating the same plan again and expect the PLAN_EXISTS_ERROR_MSG
 | 
			
		||||
 | 
			
		||||
        # We first delete the local Stripe Plan
 | 
			
		||||
        # We first delete the local Stripe Plan, so that the code tries to create a new plan in Stripe
 | 
			
		||||
        StripePlan.objects.filter(stripe_plan_id=new_plan_id_str).all().delete()
 | 
			
		||||
        stripe_plan_1 = stripe_utils.get_or_create_stripe_plan(2000, "test plan {}".format(unique_id),
 | 
			
		||||
                                                               stripe_plan_id=new_plan_id_str)
 | 
			
		||||
| 
						 | 
				
			
			@ -157,12 +166,14 @@ class StripePlanTestCase(TestStripeCustomerDescription):
 | 
			
		|||
 | 
			
		||||
        # Delete the test stripe plan that we just created
 | 
			
		||||
        delete_result = stripe_utils.delete_stripe_plan(new_plan_id_str)
 | 
			
		||||
        self.assertIsInstance(delete_result, bool)
 | 
			
		||||
        self.assertIsInstance(delete_result, dict)
 | 
			
		||||
        self.assertEqual(delete_result.get('response_object'), True)
 | 
			
		||||
 | 
			
		||||
    @patch('utils.stripe_utils.logger')
 | 
			
		||||
    def test_delete_unexisting_plan_should_fail(self, mock_logger):
 | 
			
		||||
        plan_id = 'crazy-plan-id-that-does-not-exist'
 | 
			
		||||
        stripe_utils = StripeUtils()
 | 
			
		||||
        result = stripe_utils.delete_stripe_plan(plan_id)
 | 
			
		||||
        self.assertIsInstance(result, dict)
 | 
			
		||||
        self.assertEqual(result.get('response_object'), False)
 | 
			
		||||
        mock_logger.debug.assert_called_with(stripe_utils.PLAN_DOES_NOT_EXIST_ERROR_MSG.format(plan_id))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue