forked from GithubBackups/healthchecks
More tests.
This commit is contained in:
parent
44f0ad45a4
commit
e80d46a0a9
29
hc/payments/tests/test_billing.py
Normal file
29
hc/payments/tests/test_billing.py
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
from django.contrib.auth.models import User
|
||||||
|
from django.test import TestCase
|
||||||
|
from hc.payments.models import Subscription
|
||||||
|
from mock import Mock, patch
|
||||||
|
|
||||||
|
|
||||||
|
class BillingTestCase(TestCase):
|
||||||
|
|
||||||
|
def setUp(self):
|
||||||
|
self.alice = User(username="alice")
|
||||||
|
self.alice.set_password("password")
|
||||||
|
self.alice.save()
|
||||||
|
|
||||||
|
self.sub = Subscription(user=self.alice)
|
||||||
|
self.sub.subscription_id = "test-id"
|
||||||
|
self.sub.customer_id = "test-customer-id"
|
||||||
|
self.sub.save()
|
||||||
|
|
||||||
|
@patch("hc.payments.views.braintree")
|
||||||
|
def test_it_works(self, mock_braintree):
|
||||||
|
|
||||||
|
m1 = Mock(id="abc123", amount=123)
|
||||||
|
m2 = Mock(id="def456", amount=456)
|
||||||
|
mock_braintree.Transaction.search.return_value = [m1, m2]
|
||||||
|
|
||||||
|
self.client.login(username="alice", password="password")
|
||||||
|
r = self.client.get("/billing/")
|
||||||
|
self.assertContains(r, "123")
|
||||||
|
self.assertContains(r, "def456")
|
28
hc/payments/tests/test_cancel_plan.py
Normal file
28
hc/payments/tests/test_cancel_plan.py
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
from django.contrib.auth.models import User
|
||||||
|
from django.test import TestCase
|
||||||
|
from hc.payments.models import Subscription
|
||||||
|
from mock import patch
|
||||||
|
|
||||||
|
|
||||||
|
class CancelPlanTestCase(TestCase):
|
||||||
|
|
||||||
|
def setUp(self):
|
||||||
|
self.alice = User(username="alice")
|
||||||
|
self.alice.set_password("password")
|
||||||
|
self.alice.save()
|
||||||
|
|
||||||
|
self.sub = Subscription(user=self.alice)
|
||||||
|
self.sub.subscription_id = "test-id"
|
||||||
|
self.sub.plan_id = "P5"
|
||||||
|
self.sub.save()
|
||||||
|
|
||||||
|
@patch("hc.payments.views.braintree")
|
||||||
|
def test_it_works(self, mock_braintree):
|
||||||
|
|
||||||
|
self.client.login(username="alice", password="password")
|
||||||
|
r = self.client.post("/pricing/cancel_plan/")
|
||||||
|
self.assertRedirects(r, "/pricing/")
|
||||||
|
|
||||||
|
self.sub.refresh_from_db()
|
||||||
|
self.assertEqual(self.sub.subscription_id, "")
|
||||||
|
self.assertEqual(self.sub.plan_id, "")
|
43
hc/payments/tests/test_invoice.py
Normal file
43
hc/payments/tests/test_invoice.py
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
from django.contrib.auth.models import User
|
||||||
|
from django.test import TestCase
|
||||||
|
from hc.payments.models import Subscription
|
||||||
|
from mock import Mock, patch
|
||||||
|
|
||||||
|
|
||||||
|
class InvoiceTestCase(TestCase):
|
||||||
|
|
||||||
|
def setUp(self):
|
||||||
|
self.alice = User(username="alice")
|
||||||
|
self.alice.set_password("password")
|
||||||
|
self.alice.save()
|
||||||
|
|
||||||
|
self.sub = Subscription(user=self.alice)
|
||||||
|
self.sub.subscription_id = "test-id"
|
||||||
|
self.sub.customer_id = "test-customer-id"
|
||||||
|
self.sub.save()
|
||||||
|
|
||||||
|
@patch("hc.payments.views.braintree")
|
||||||
|
def test_it_works(self, mock_braintree):
|
||||||
|
|
||||||
|
tx = Mock()
|
||||||
|
tx.id = "abc123"
|
||||||
|
tx.customer_details.id = "test-customer-id"
|
||||||
|
tx.created_at = None
|
||||||
|
mock_braintree.Transaction.find.return_value = tx
|
||||||
|
|
||||||
|
self.client.login(username="alice", password="password")
|
||||||
|
r = self.client.get("/invoice/abc123/")
|
||||||
|
self.assertContains(r, "ABC123") # tx.id in uppercase
|
||||||
|
|
||||||
|
@patch("hc.payments.views.braintree")
|
||||||
|
def test_it_checks_customer_id(self, mock_braintree):
|
||||||
|
|
||||||
|
tx = Mock()
|
||||||
|
tx.id = "abc123"
|
||||||
|
tx.customer_details.id = "test-another-customer-id"
|
||||||
|
tx.created_at = None
|
||||||
|
mock_braintree.Transaction.find.return_value = tx
|
||||||
|
|
||||||
|
self.client.login(username="alice", password="password")
|
||||||
|
r = self.client.get("/invoice/abc123/")
|
||||||
|
self.assertEqual(r.status_code, 403)
|
Loading…
x
Reference in New Issue
Block a user