def test_handle_fully_paid_order_no_email(mock_send_payment_confirmation, order): order.user = None order.user_email = "" handle_fully_paid_order(order) event = order.events.get() assert event.type == OrderEvents.ORDER_FULLY_PAID assert not mock_send_payment_confirmation.called
def test_handle_fully_paid_order_no_email(mock_send_payment_confirmation, order): order.user = None order.user_email = "" handle_fully_paid_order(order) event = order.events.get() assert event.type == OrderEvents.ORDER_FULLY_PAID assert not mock_send_payment_confirmation.called
def test_handle_fully_paid_order_digital_lines( mock_send_payment_confirmation, mock_send_fulfillment_confirmation, order, digital_content, variant, site_settings, ): site_settings.automatic_fulfillment_digital_products = True site_settings.save() variant.digital_content = digital_content variant.digital_content.save() product_type = variant.product.product_type product_type.is_shipping_required = False product_type.is_digital = True product_type.save() net = variant.get_price() gross = Money(amount=net.amount * Decimal(1.23), currency=net.currency) order.lines.create( product_name=str(variant.product), variant_name=str(variant), product_sku=variant.sku, is_shipping_required=variant.is_shipping_required(), quantity=3, variant=variant, unit_price=TaxedMoney(net=net, gross=gross), tax_rate=23, ) handle_fully_paid_order(order) fulfillment = order.fulfillments.first() event_order_paid, event_email_sent, event_order_fulfilled, event_digital_links = ( order.events.all()) assert event_order_paid.type == OrderEvents.ORDER_FULLY_PAID assert event_email_sent.type == OrderEvents.EMAIL_SENT assert event_order_fulfilled.type == OrderEvents.EMAIL_SENT assert event_digital_links.type == OrderEvents.EMAIL_SENT assert (event_order_fulfilled.parameters["email_type"] == OrderEventsEmails.FULFILLMENT) assert (event_digital_links.parameters["email_type"] == OrderEventsEmails.DIGITAL_LINKS) mock_send_payment_confirmation.assert_called_once_with(order.pk) mock_send_fulfillment_confirmation.assert_called_once_with( order.pk, fulfillment.pk) order.refresh_from_db() assert order.status == OrderStatus.FULFILLED
def test_handle_fully_paid_order(mock_send_payment_confirmation, order): handle_fully_paid_order(order) event_order_paid, event_email_sent = order.events.all() assert event_order_paid.type == OrderEvents.ORDER_FULLY_PAID.value assert event_email_sent.type == OrderEvents.EMAIL_SENT.value assert event_email_sent.parameters == { 'email': order.get_user_current_email(), 'email_type': OrderEventsEmails.PAYMENT.value} mock_send_payment_confirmation.assert_called_once_with(order.pk)
def test_handle_fully_paid_order(mock_send_payment_confirmation, order): handle_fully_paid_order(order) event_order_paid, event_email_sent = order.events.all() assert event_order_paid.type == OrderEvents.ORDER_FULLY_PAID.value assert event_email_sent.type == OrderEvents.EMAIL_SENT.value assert event_email_sent.parameters == { 'email': order.get_user_current_email(), 'email_type': OrderEventsEmails.PAYMENT.value} mock_send_payment_confirmation.assert_called_once_with(order.pk)
def test_handle_fully_paid_order(mock_send_payment_confirmation, order): handle_fully_paid_order(order) event_order_paid, event_email_sent = order.events.all() assert event_order_paid.type == OrderEvents.ORDER_FULLY_PAID assert event_email_sent.type == OrderEvents.EMAIL_SENT assert event_email_sent.parameters == { "email": order.get_customer_email(), "email_type": OrderEventsEmails.PAYMENT, } mock_send_payment_confirmation.assert_called_once_with(order.pk)