Beispiel #1
0
def test_view_create_from_draft_order_shipping_zone_not_valid(
    admin_client, draft_order, settings, shipping_zone
):
    method = shipping_zone.shipping_methods.create(
        name="DHL", price=Money(10, settings.DEFAULT_CURRENCY)
    )
    shipping_zone.countries = ["DE"]
    shipping_zone.save()
    # Shipping zone is not valid, as shipping address is listed outside the
    # shipping zone's countries
    assert draft_order.shipping_address.country.code != "DE"
    draft_order.shipping_method = method
    draft_order.save()
    url = reverse(
        "dashboard:create-order-from-draft", kwargs={"order_pk": draft_order.pk}
    )
    data = {"shipping_method": method.pk}

    response = admin_client.post(url, data)

    assert response.status_code == 400
    draft_order.refresh_from_db()
    assert draft_order.status == OrderStatus.DRAFT
    errors = get_form_errors(response)
    error = "Shipping method is not valid for chosen shipping address"
    assert error in errors
Beispiel #2
0
def test_view_create_from_draft_order_shipping_zone_not_valid(
    admin_client, draft_order, settings, shipping_zone
):
    method = shipping_zone.shipping_methods.create(
        name="DHL", price=Money(10, settings.DEFAULT_CURRENCY)
    )
    shipping_zone.countries = ["DE"]
    shipping_zone.save()
    # Shipping zone is not valid, as shipping address is listed outside the
    # shipping zone's countries
    assert draft_order.shipping_address.country.code != "DE"
    draft_order.shipping_method = method
    draft_order.save()
    url = reverse(
        "dashboard:create-order-from-draft", kwargs={"order_pk": draft_order.pk}
    )
    data = {"shipping_method": method.pk}

    response = admin_client.post(url, data)

    assert response.status_code == 400
    draft_order.refresh_from_db()
    assert draft_order.status == OrderStatus.DRAFT
    errors = get_form_errors(response)
    error = "Shipping method is not valid for chosen shipping address"
    assert error in errors
Beispiel #3
0
def test_view_create_from_draft_order_empty_order(admin_client, draft_order):
    order = draft_order
    order.lines.all().delete()
    url = reverse("dashboard:create-order-from-draft", kwargs={"order_pk": order.pk})
    data = {"csrfmiddlewaretoken": "hello"}

    response = admin_client.post(url, data)

    assert response.status_code == 400
    order.refresh_from_db()
    assert order.status == OrderStatus.DRAFT
    errors = get_form_errors(response)
    assert "Could not create order without any products" in errors
Beispiel #4
0
def test_view_create_from_draft_order_empty_order(admin_client, draft_order):
    order = draft_order
    order.lines.all().delete()
    url = reverse("dashboard:create-order-from-draft", kwargs={"order_pk": order.pk})
    data = {"csrfmiddlewaretoken": "hello"}

    response = admin_client.post(url, data)

    assert response.status_code == 400
    order.refresh_from_db()
    assert order.status == OrderStatus.DRAFT
    errors = get_form_errors(response)
    assert "Could not create order without any products" in errors
def test_view_create_from_draft_task_empty_order(admin_client, draft_order):
    task = draft_order
    task.lines.all().delete()
    url = reverse(
        'dashboard:create-task-from-draft', kwargs={'task_pk': task.pk})
    data = {'csrfmiddlewaretoken': 'hello'}

    response = admin_client.post(url, data)

    assert response.status_code == 400
    task.refresh_from_db()
    assert task.status == TaskStatus.DRAFT
    errors = get_form_errors(response)
    assert 'Could not create task without any skills' in errors
Beispiel #6
0
def test_view_create_from_draft_order_shipping_method_not_valid(
        admin_client, draft_order, shipping_method):
    method = shipping_method.price_per_country.create(country_code='DE',
                                                      price=10)
    draft_order.shipping_method = method
    draft_order.save()
    url = reverse('dashboard:create-order-from-draft',
                  kwargs={'order_pk': draft_order.pk})
    data = {'csrfmiddlewaretoken': 'hello'}

    response = admin_client.post(url, data)

    assert response.status_code == 400
    draft_order.refresh_from_db()
    assert draft_order.status == OrderStatus.DRAFT
    errors = get_form_errors(response)
    error = 'Shipping method is not valid for chosen shipping address'
    assert error in errors
Beispiel #7
0
def test_view_create_from_draft_order_shipping_method_not_valid(
        admin_client, draft_order, shipping_method):
    method = shipping_method.price_per_country.create(
        country_code='DE', price=10)
    draft_order.shipping_method = method
    draft_order.save()
    url = reverse(
        'dashboard:create-order-from-draft',
        kwargs={'order_pk': draft_order.pk})
    data = {'csrfmiddlewaretoken': 'hello'}

    response = admin_client.post(url, data)

    assert response.status_code == 400
    draft_order.refresh_from_db()
    assert draft_order.status == OrderStatus.DRAFT
    errors = get_form_errors(response)
    error = 'Shipping method is not valid for chosen shipping address'
    assert error in errors
Beispiel #8
0
def test_view_order_customer_edit_not_valid(admin_client, customer_user, draft_order):
    draft_order.user = None
    draft_order.user_email = ""
    draft_order.save()
    url = reverse("dashboard:order-customer-edit", kwargs={"order_pk": draft_order.pk})
    data = {
        "user_email": "*****@*****.**",
        "user": customer_user.pk,
        "update_addresses": False,
    }

    response = admin_client.post(url, data)

    assert response.status_code == 400
    draft_order.refresh_from_db()
    assert not draft_order.user == customer_user
    errors = get_form_errors(response)
    error = (
        "An order can be related either with an email or an existing user " "account"
    )
    assert error in errors
Beispiel #9
0
def test_view_order_customer_edit_not_valid(
        admin_client, customer_user, draft_order):
    draft_order.user = None
    draft_order.user_email = ''
    draft_order.save()
    url = reverse(
        'dashboard:order-customer-edit', kwargs={'order_pk': draft_order.pk})
    data = {
        'user_email': '*****@*****.**', 'user': customer_user.pk,
        'update_addresses': False}

    response = admin_client.post(url, data)

    assert response.status_code == 400
    draft_order.refresh_from_db()
    assert not draft_order.user == customer_user
    errors = get_form_errors(response)
    error = (
        'An order can be related either with an email or an existing user '
        'account')
    assert error in errors
Beispiel #10
0
def test_view_order_customer_edit_not_valid(
        admin_client, customer_user, draft_order):
    draft_order.user = None
    draft_order.user_email = ''
    draft_order.save()
    url = reverse(
        'dashboard:order-customer-edit', kwargs={'order_pk': draft_order.pk})
    data = {
        'user_email': '*****@*****.**', 'user': customer_user.pk,
        'update_addresses': False}

    response = admin_client.post(url, data)

    assert response.status_code == 400
    draft_order.refresh_from_db()
    assert not draft_order.user == customer_user
    errors = get_form_errors(response)
    error = (
        'An order can be related either with an email or an existing user '
        'account')
    assert error in errors
Beispiel #11
0
def test_view_order_customer_edit_not_valid(admin_client, customer_user, draft_order):
    draft_order.user = None
    draft_order.user_email = ""
    draft_order.save()
    url = reverse("dashboard:order-customer-edit", kwargs={"order_pk": draft_order.pk})
    data = {
        "user_email": "*****@*****.**",
        "user": customer_user.pk,
        "update_addresses": False,
    }

    response = admin_client.post(url, data)

    assert response.status_code == 400
    draft_order.refresh_from_db()
    assert not draft_order.user == customer_user
    errors = get_form_errors(response)
    error = (
        "An order can be related either with an email or an existing user " "account"
    )
    assert error in errors
Beispiel #12
0
def test_view_create_from_draft_order_shipping_zone_not_valid(
        admin_client, draft_order, shipping_zone):
    method = shipping_zone.shipping_methods.create(name='DHL', price=10)
    shipping_zone.countries = ['DE']
    shipping_zone.save()
    # Shipping zone is not valid, as shipping address is listed outside the
    # shipping zone's countries
    assert draft_order.shipping_address.country.code != 'DE'
    draft_order.shipping_method = method
    draft_order.save()
    url = reverse('dashboard:create-order-from-draft',
                  kwargs={'order_pk': draft_order.pk})
    data = {'shipping_method': method.pk}

    response = admin_client.post(url, data)

    assert response.status_code == 400
    draft_order.refresh_from_db()
    assert draft_order.status == OrderStatus.DRAFT
    errors = get_form_errors(response)
    error = 'Shipping method is not valid for chosen shipping address'
    assert error in errors
def test_view_create_from_draft_task_delivery_zone_not_valid(
        admin_client, draft_order, settings, delivery_zone):
    method = delivery_zone.delivery_methods.create(
        name='DHL', price=Money(10, settings.DEFAULT_CURRENCY))
    delivery_zone.countries = ['DE']
    delivery_zone.save()
    # Delivery zone is not valid, as delivery address is listed outside the
    # delivery zone's countries
    assert draft_order.delivery_address.country.code != 'DE'
    draft_order.delivery_method = method
    draft_order.save()
    url = reverse(
        'dashboard:create-task-from-draft',
        kwargs={'task_pk': draft_order.pk})
    data = {'delivery_method': method.pk}

    response = admin_client.post(url, data)

    assert response.status_code == 400
    draft_order.refresh_from_db()
    assert draft_order.status == TaskStatus.DRAFT
    errors = get_form_errors(response)
    error = 'Delivery method is not valid for chosen delivery address'
    assert error in errors