def test_refresh_card_expiry_dates_refreshed(): """Customer card already marked for 'refresh', so don't send an email.""" with mock.patch('stripe.Customer.retrieve') as mock_retrieve: mock_retrieve.return_value = { 'default_card': '1234', 'cards': { 'data': [ { 'id': '1234', 'exp_month': '8', 'exp_year': '1986', }, ], }, } obj = ObjectPaymentPlanFactory(content_object=ContactFactory()) ObjectPaymentPlanInstalmentFactory( object_payment_plan=obj ) ObjectPaymentPlanInstalmentFactory( object_payment_plan=obj, due=date.today() + relativedelta(months=+1), ) customer = CustomerFactory( email=obj.content_object.checkout_email, refresh=True, ) ObjectPaymentPlan.objects.refresh_card_expiry_dates() customer.refresh_from_db() assert True == customer.refresh # check we didn't send a notification email assert 0 == Message.objects.count()
def test_refresh_card_expiry_dates_future(): with mock.patch("stripe.Customer.retrieve") as mock_retrieve: mock_retrieve.return_value = { "default_card": "1234", "cards": {"data": [{"id": "1234", "exp_month": "8", "exp_year": "2050"}]}, } obj = ObjectPaymentPlanFactory(content_object=ContactFactory()) ObjectPaymentPlanInstalmentFactory(object_payment_plan=obj) ObjectPaymentPlanInstalmentFactory(object_payment_plan=obj, due=date.today() + relativedelta(months=+1)) customer = CustomerFactory(email=obj.content_object.checkout_email) ObjectPaymentPlan.objects.refresh_card_expiry_dates() customer.refresh_from_db() assert False == customer.refresh # check we didn't send a notification email assert 0 == Message.objects.count()
def test_refresh_card_expiry_dates(): MailTemplateFactory(slug=Customer.MAIL_TEMPLATE_CARD_EXPIRY) with mock.patch("stripe.Customer.retrieve") as mock_retrieve: mock_retrieve.return_value = { "default_card": "1234", "cards": {"data": [{"id": "1234", "exp_month": "8", "exp_year": "1986"}]}, } obj = ObjectPaymentPlanFactory(content_object=ContactFactory()) ObjectPaymentPlanInstalmentFactory(object_payment_plan=obj) ObjectPaymentPlanInstalmentFactory(object_payment_plan=obj, due=date.today() + relativedelta(months=+1)) customer = CustomerFactory(email=obj.content_object.checkout_email) ObjectPaymentPlan.objects.refresh_card_expiry_dates() customer.refresh_from_db() assert True == customer.refresh # check email template context assert 1 == Message.objects.count() message = Message.objects.first() assert 1 == message.mail_set.count() mail = message.mail_set.first() assert 1 == mail.mailfield_set.count() assert {"name": customer.name} == {f.key: f.value for f in mail.mailfield_set.all()}
def test_refresh_card_expiry_dates(): MailTemplateFactory(slug=Customer.MAIL_TEMPLATE_CARD_EXPIRY) with mock.patch('stripe.Customer.retrieve') as mock_retrieve: mock_retrieve.return_value = { 'default_card': '1234', 'cards': { 'data': [ { 'id': '1234', 'exp_month': '8', 'exp_year': '1986', }, ], }, } obj = ObjectPaymentPlanFactory(content_object=ContactFactory()) ObjectPaymentPlanInstalmentFactory( object_payment_plan=obj ) ObjectPaymentPlanInstalmentFactory( object_payment_plan=obj, due=date.today() + relativedelta(months=+1), ) customer = CustomerFactory( email=obj.content_object.checkout_email ) ObjectPaymentPlan.objects.refresh_card_expiry_dates() customer.refresh_from_db() assert True == customer.refresh # check email template context assert 1 == Message.objects.count() message = Message.objects.first() assert 1 == message.mail_set.count() mail = message.mail_set.first() assert 1 == mail.mailfield_set.count() assert { 'name': customer.name, } == {f.key: f.value for f in mail.mailfield_set.all()}
def test_report_card_expiry_dates(): object_payment_plan = ObjectPaymentPlanFactory( content_object=ContactFactory() ) ObjectPaymentPlanInstalmentFactory(object_payment_plan=object_payment_plan) obj = ObjectPaymentPlanInstalmentFactory( object_payment_plan=ObjectPaymentPlanFactory( content_object=ContactFactory() ), ) CustomerFactory( email=obj.object_payment_plan.content_object.checkout_email ) ObjectPaymentPlan.objects.report_card_expiry_dates
def test_customer_refresh(): customer = CustomerFactory(refresh=True) assert True == customer.refresh
def test_is_expiring_past(): customer = CustomerFactory(expiry_date=date(2015, 2, 1)) assert True == customer.is_expiring
def test_is_expiring_none(): customer = CustomerFactory() assert False == customer.is_expiring
def test_is_expiring_future(): customer = CustomerFactory(expiry_date=date(3000, 2, 1)) assert False == customer.is_expiring
def test_customer_refresh_default(): customer = CustomerFactory() assert False == customer.refresh