示例#1
0
    def test_transaction_done_update_member_category(self):
        payment, transaction = self._make_transaction(status=1, code="xpto", price="123.54")
        view = NotificationView()
        view.transaction_code = 'xpto'
        view.transaction_done(payment.id)

        reloaded_member = Member.objects.get(id=self.member.id)
        self.assertEqual(reloaded_member.category, payment.type.category)
示例#2
0
    def test_transaction_done_should_respect_last_payment_date(self):
        payment, transaction = self._make_transaction(status=1, code="xpto", price="123.54")
        valid_until = timezone.now() + timedelta(days=payment.type.duration)
        view = NotificationView()
        view.transaction_code = 'xpto'
        view.transaction_done(payment.id)

        reloaded_payment = Payment.objects.get(id=payment.id)
        self.assertEqual(reloaded_payment.valid_until.strftime('%Y-%m-%d'),
                         valid_until.strftime('%Y-%m-%d'))
示例#3
0
    def test_transaction_done_update_member_category(self):
        payment, transaction = self._make_transaction(status=1,
                                                      code="xpto",
                                                      price="123.54")
        view = NotificationView()
        view.transaction_code = 'xpto'
        view.transaction_done(payment.id)

        reloaded_member = Member.objects.get(id=self.member.id)
        self.assertEqual(reloaded_member.category, payment.type.category)
示例#4
0
    def test_transaction_done_fill_payment_valid_until(self):
        payment, transaction = self._make_transaction(status=1, code="xpto", price="123.54")
        self.assertFalse(payment.valid_until)
        view = NotificationView()
        view.transaction_code = 'xpto'
        view.transaction_done(payment.id)

        valid_until = timezone.now() + timedelta(days=payment.type.duration)
        reloaded_payment = Payment.objects.get(id=payment.id)
        self.assertTrue(reloaded_payment.valid_until)
        self.assertEqual(reloaded_payment.valid_until.strftime('%Y-%m-%d+%H:%M'),
                         valid_until.strftime('%Y-%m-%d+%H:%M'))
示例#5
0
    def test_transaction_done_should_respect_last_payment_date(self):
        payment, transaction = self._make_transaction(status=1,
                                                      code="xpto",
                                                      price="123.54")
        valid_until = timezone.now() + timedelta(days=payment.type.duration)
        view = NotificationView()
        view.transaction_code = 'xpto'
        view.transaction_done(payment.id)

        reloaded_payment = Payment.objects.get(id=payment.id)
        self.assertEqual(reloaded_payment.valid_until.strftime('%Y-%m-%d'),
                         valid_until.strftime('%Y-%m-%d'))
示例#6
0
    def test_transaction_done_fill_payment_date(self):
        payment, transaction = self._make_transaction(status=1, code="xpto", price="123.54")
        self.assertFalse(payment.date)
        view = NotificationView()
        view.transaction_code = 'xpto'
        view.transaction_done(payment.id)

        reloaded_payment = Payment.objects.get(id=payment.id)
        self.assertTrue(reloaded_payment.date)
        self.assertEqual(
            reloaded_payment.date.strftime('%Y-%m-%d+%H:%M'),
            timezone.now().strftime('%Y-%m-%d+%H:%M')
        )
示例#7
0
    def test_transaction_done_fill_payment_date(self):
        payment, transaction = self._make_transaction(status=1,
                                                      code="xpto",
                                                      price="123.54")
        self.assertFalse(payment.date)
        view = NotificationView()
        view.transaction_code = 'xpto'
        view.transaction_done(payment.id)

        reloaded_payment = Payment.objects.get(id=payment.id)
        self.assertTrue(reloaded_payment.date)
        self.assertEqual(reloaded_payment.date.strftime('%Y-%m-%d+%H:%M'),
                         timezone.now().strftime('%Y-%m-%d+%H:%M'))
示例#8
0
    def test_transaction_done_fill_payment_valid_until(self):
        payment, transaction = self._make_transaction(status=1,
                                                      code="xpto",
                                                      price="123.54")
        self.assertFalse(payment.valid_until)
        view = NotificationView()
        view.transaction_code = 'xpto'
        view.transaction_done(payment.id)

        valid_until = timezone.now() + timedelta(days=payment.type.duration)
        reloaded_payment = Payment.objects.get(id=payment.id)
        self.assertTrue(reloaded_payment.valid_until)
        self.assertEqual(
            reloaded_payment.valid_until.strftime('%Y-%m-%d+%H:%M'),
            valid_until.strftime('%Y-%m-%d+%H:%M'))
示例#9
0
    def test_transaction_done_send_email(self):
        payment, transaction = self._make_transaction(status=1, code="xpto", price="123.54")

        #make sure that the outbox is empty
        mail.outbox = []

        view = NotificationView()
        view.transaction_code = 'xpto'
        view.transaction_done(payment.id)


        #get the created member
        #set the strings to be verified
        body = u'Olá %s! Seu registro na Associação Python Brasil (APyB) já foi realizado!' % self.member.user.get_full_name()
        subject = u'Registro OK'

        #verify the outbox length
        self.assertEqual(len(mail.outbox), 1)
        #verify the subject string
        self.assertEqual(mail.outbox[0].subject, subject)
        #verify the body string
        self.assertEqual(mail.outbox[0].body, body)
示例#10
0
    def test_transaction_done_send_email(self):
        payment, transaction = self._make_transaction(status=1,
                                                      code="xpto",
                                                      price="123.54")

        #make sure that the outbox is empty
        mail.outbox = []

        view = NotificationView()
        view.transaction_code = 'xpto'
        view.transaction_done(payment.id)

        #get the created member
        #set the strings to be verified
        body = u'Olá %s! Seu registro na Associação Python Brasil (APyB) já foi realizado!' % self.member.user.get_full_name(
        )
        subject = u'Registro OK'

        #verify the outbox length
        self.assertEqual(len(mail.outbox), 1)
        #verify the subject string
        self.assertEqual(mail.outbox[0].subject, subject)
        #verify the body string
        self.assertEqual(mail.outbox[0].body, body)