def test_transaction_canceled(self): subscription = Subscription.objects.create( user=self.user, type="talk", ) transaction = Transaction.objects.create(subscription=subscription, status="pending", code="xpto", price="115.84") NotificationView().transaction_canceled(subscription.id) transaction = Transaction.objects.get(id=transaction.id) self.assertEqual("canceled", transaction.status)
def test_transaction_done(self): subscription = Subscription.objects.create( user=self.user, type="talk", status="pending", ) transaction = Transaction.objects.create(subscription=subscription, status="pending", code="xpto", price="123.54") NotificationView().transaction_done(subscription.id) transaction = Transaction.objects.select_related("subscription").get( id=transaction.id) self.assertEqual("done", transaction.status) self.assertEqual("confirmed", transaction.subscription.status)
def test_post(self): subscription = Subscription.objects.create( user=self.user, type="talk", ) transaction = Transaction.objects.create(subscription=subscription, status="pending", code="xpto", price=123.45) notification_view = NotificationView() notification_view.transaction = (lambda code: (3, 1)) request = RequestFactory().post("/", {"notificationCode": "123"}) response = notification_view.post(request) transaction = Transaction.objects.get(id=transaction.id) self.assertEqual("done", transaction.status) self.assertEqual("OK", response.content)
def test_methods_by_status(self): methods_by_status = NotificationView().methods_by_status self.assertEqual("transaction_done", methods_by_status[3].__name__) self.assertEqual("transaction_canceled", methods_by_status[7].__name__)
def test_transaction_should_get_info_about_transaction(self): status, ref = NotificationView().transaction("code") self.assertEqual(3, status) self.assertEqual(3, ref)