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 | import uuid | ||||||
| from unittest.mock import patch | 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): | class BaseTestCase(TestCase): | ||||||
|     """ |     """ | ||||||
|  | @ -137,6 +138,15 @@ class StripePlanTestCase(TestStripeCustomerDescription): | ||||||
| 
 | 
 | ||||||
|     @patch('utils.stripe_utils.logger') |     @patch('utils.stripe_utils.logger') | ||||||
|     def test_create_duplicate_plans_error_handling(self, mock_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() |         stripe_utils = StripeUtils() | ||||||
|         unique_id = str(uuid.uuid4().hex) |         unique_id = str(uuid.uuid4().hex) | ||||||
|         new_plan_id_str = 'test-plan-{}'.format(unique_id) |         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) |         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 |         # Test creating the same plan again and expect the PLAN_EXISTS_ERROR_MSG | ||||||
| 
 |         # We first delete the local Stripe Plan, so that the code tries to create a new plan in Stripe | ||||||
|         # We first delete the local Stripe Plan |  | ||||||
|         StripePlan.objects.filter(stripe_plan_id=new_plan_id_str).all().delete() |         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_1 = stripe_utils.get_or_create_stripe_plan(2000, "test plan {}".format(unique_id), | ||||||
|                                                                stripe_plan_id=new_plan_id_str) |                                                                stripe_plan_id=new_plan_id_str) | ||||||
|  | @ -157,12 +166,14 @@ class StripePlanTestCase(TestStripeCustomerDescription): | ||||||
| 
 | 
 | ||||||
|         # Delete the test stripe plan that we just created |         # Delete the test stripe plan that we just created | ||||||
|         delete_result = stripe_utils.delete_stripe_plan(new_plan_id_str) |         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') |     @patch('utils.stripe_utils.logger') | ||||||
|     def test_delete_unexisting_plan_should_fail(self, mock_logger): |     def test_delete_unexisting_plan_should_fail(self, mock_logger): | ||||||
|         plan_id = 'crazy-plan-id-that-does-not-exist' |         plan_id = 'crazy-plan-id-that-does-not-exist' | ||||||
|         stripe_utils = StripeUtils() |         stripe_utils = StripeUtils() | ||||||
|         result = stripe_utils.delete_stripe_plan(plan_id) |         result = stripe_utils.delete_stripe_plan(plan_id) | ||||||
|  |         self.assertIsInstance(result, dict) | ||||||
|         self.assertEqual(result.get('response_object'), False) |         self.assertEqual(result.get('response_object'), False) | ||||||
|         mock_logger.debug.assert_called_with(stripe_utils.PLAN_DOES_NOT_EXIST_ERROR_MSG.format(plan_id)) |         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