from unittest.mock import Mock, patch from django.utils.timezone import now from hc.payments.models import Subscription from hc.test import BaseTestCase class BillingHistoryTestCase(BaseTestCase): def setUp(self): super().setUp() 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.models.braintree") def test_it_works(self, mock_braintree): m1 = Mock(id="abc123", amount=123, created_at=now()) m2 = Mock(id="def456", amount=456, created_at=now()) mock_braintree.Transaction.search.return_value = [m1, m2] self.client.login(username="alice@example.org", password="password") r = self.client.get("/accounts/profile/billing/history/") self.assertContains(r, "123") self.assertContains(r, "456")