def test_get_plan_detail(self): plan = PlanFactory.create() url = reverse('plan-detail', kwargs={'pk': plan.pk}) response = self.client.get(url) self.assertEqual(response.status_code, status.HTTP_200_OK) self.assertNotEqual(response.data, [])
def test_patch_plan_non_editable_field(self): plan = PlanFactory.create() url = reverse('plan-detail', kwargs={'pk': plan.pk}) response = self.client.patch(url, json.dumps({"currency": "DollaDolla"}), content_type='application/json') self.assertNotEqual(response.data['currency'], 'DollaDolla') self.assertEqual(response.status_code, status.HTTP_200_OK)
def test_delete_plan(self): plan = PlanFactory.create() plan.enabled = True plan.save() url = reverse('plan-detail', kwargs={'pk': plan.pk}) response = self.client.delete(url) self.assertEqual(response.status_code, status.HTTP_200_OK) self.assertEqual(response.data, {"deleted": True})
def test_put_plan(self): plan = PlanFactory.create() url = reverse('plan-detail', kwargs={'pk': plan.pk}) response = self.client.put(url) self.assertEqual(response.status_code, status.HTTP_405_METHOD_NOT_ALLOWED) self.assertEqual(response.data, {u'detail': u'Method "PUT" not allowed.'})
def setUp(self): # Setup simple subscription self.plan = PlanFactory.create(interval=Plan.INTERVALS.MONTH, interval_count=1, generate_after=120, enabled=True, amount=Decimal('200.00'), trial_period_days=0) self.subscription = SubscriptionFactory.create(plan=self.plan, start_date=self.date) self.subscription.activate() self.subscription.save()
def test_patch_plan(self): plan = PlanFactory.create() url = reverse('plan-detail', kwargs={'pk': plan.pk}) response = self.client.patch(url, json.dumps({ "name": "Hydrogen", "generate_after": 86400 }), content_type='application/json') self.assertEqual(response.data['name'], 'Hydrogen') self.assertEqual(response.data['generate_after'], 86400) self.assertEqual(response.status_code, status.HTTP_200_OK)
def test_create_post_subscription_with_invalid_trial_end(self): plan = PlanFactory.create() customer = CustomerFactory.create() plan_url = reverse('plan-detail', kwargs={'pk': plan.pk}) url = reverse('subscription-list', kwargs={'customer_pk': customer.pk}) response = self.client.post(url, json.dumps({ "plan": plan_url, "trial_end": '2014-11-07', "start_date": '2014-11-19' }), content_type='application/json') assert response.status_code == status.HTTP_400_BAD_REQUEST
def test_create_subscription(self): plan = PlanFactory.create() customer = CustomerFactory.create() plan_url = reverse('plan-detail', kwargs={'pk': plan.pk}) url = reverse('subscription-list', kwargs={'customer_pk': customer.pk}) response = self.client.post(url, json.dumps({ "plan": plan_url, "trial_end": '2014-12-07', "start_date": '2014-11-19' }), content_type='application/json') assert response.status_code == status.HTTP_201_CREATED subscription = Subscription.objects.get(id=response.data['id']) assert response.data == spec_subscription(subscription)