Example #1
0
def test_send_documents_for_the_order(
    client_task, mailoutbox,
):
    region = baker.make_recipe("common.region")
    buyer = baker.make_recipe("users.user", region=region)
    order = baker.make_recipe("orders.order", region=region, buyer=buyer)
    platform_user = baker.make_recipe("users.user", region=region)
    baker.make_recipe(
        "documents.order_confirmation",
        buyer=DocumentFactory.as_dict(order.buyer),
        seller=DocumentFactory.as_dict(platform_user),
        order=order,
    )
    DocumentSendLog.objects.create(
        order_id=order.id, email=order.buyer.email, sent=False
    )
    response = client_task.post(
        reverse(
            "mail-documents", kwargs={"order_id": order.id, "email": order.buyer.email}
        ),
    )

    assert len(mailoutbox) == 1
    assert mailoutbox[0].to[0] == order.buyer.email
    assert response.status_code == 200
Example #2
0
def test_track_sending_emails(mailoutbox, client_task):
    region = baker.make_recipe("common.region")
    buyer = baker.make_recipe("users.user", region=region)
    order = baker.make_recipe("orders.order", region=region, buyer=buyer)
    platform_user = baker.make_recipe("users.user", region=region)
    baker.make_recipe(
        "documents.order_confirmation",
        buyer=DocumentFactory.as_dict(order.buyer),
        seller=DocumentFactory.as_dict(platform_user),
        order=order,
    )

    DocumentSendLog.objects.create(
        order_id=order.id, email=order.buyer.email, sent=False
    )

    client_task.post(
        reverse(
            "mail-documents", kwargs={"order_id": order.id, "email": order.buyer.email}
        ),
    )

    assert DocumentSendLog.objects.filter(
        email=order.buyer.email, order_id=order.id, sent=True
    ).exists()
Example #3
0
def test_do_not_resend_documents_at_rerun(mailoutbox, client_task):
    region = baker.make_recipe("common.region")
    buyer = baker.make_recipe("users.user", region=region)
    order = baker.make_recipe("orders.order", region=region, buyer=buyer)
    platform_user = baker.make_recipe("users.user", region=region)
    baker.make_recipe(
        "documents.order_confirmation",
        buyer=DocumentFactory.as_dict(order.buyer),
        seller=DocumentFactory.as_dict(platform_user),
        order=order,
    )

    DocumentSendLog.objects.create(email=buyer.email, order=order, sent=True)
    client_task.post(
        reverse(
            "mail-documents", kwargs={"order_id": order.id, "email": order.buyer.email}
        ),
    )
    assert not mailoutbox