mirror of
https://framagit.org/la-chariotte/la-chariotte.git
synced 2025-05-01 11:22:24 +02:00
install pytest
This commit is contained in:
parent
09e21f7e5b
commit
0aaef7aea8
3 changed files with 94 additions and 0 deletions
|
@ -1,6 +1,7 @@
|
|||
import datetime
|
||||
|
||||
from django.utils import timezone
|
||||
<<<<<<< HEAD
|
||||
|
||||
from la_chariotte.order.models import GroupedOrder
|
||||
|
||||
|
@ -8,19 +9,33 @@ from la_chariotte.order.models import GroupedOrder
|
|||
class TestGroupedOrdersModel:
|
||||
"""Tests for Grouped orders model"""
|
||||
|
||||
=======
|
||||
from la_chariotte.order.models import Grouped_order
|
||||
|
||||
|
||||
|
||||
class TestGroupedOrdersModel():
|
||||
"""Tests for Grouped orders model"""
|
||||
>>>>>>> 9cc7783 (install pytest)
|
||||
def test_is_ongoing_with_ongoing_grouped_order(self):
|
||||
"""
|
||||
is_ongoing() returns True if the deadline is not crossed
|
||||
"""
|
||||
deadline = timezone.now() + datetime.timedelta(days=10)
|
||||
<<<<<<< HEAD
|
||||
ongoing_gr_order = GroupedOrder(deadline=deadline)
|
||||
assert ongoing_gr_order.is_ongoing()
|
||||
=======
|
||||
ongoing_gr_order = Grouped_order(deadline=deadline)
|
||||
assert ongoing_gr_order.is_ongoing() == True
|
||||
>>>>>>> 9cc7783 (install pytest)
|
||||
|
||||
def test_is_ongoing_with_old_grouped_order(self):
|
||||
"""
|
||||
is_ongoing() returns False if the deadline is crossed
|
||||
"""
|
||||
deadline = timezone.now() - datetime.timedelta(hours=1)
|
||||
<<<<<<< HEAD
|
||||
old_gr_order = GroupedOrder(deadline=deadline)
|
||||
assert not old_gr_order.is_ongoing()
|
||||
|
||||
|
@ -48,3 +63,7 @@ class TestGroupedOrdersModel:
|
|||
del_date = timezone.now().date() + datetime.timedelta(days=1)
|
||||
old_gr_order = GroupedOrder(deadline=deadline, delivery_date=del_date)
|
||||
assert old_gr_order.is_to_be_delivered()
|
||||
=======
|
||||
ongoing_gr_order = Grouped_order(deadline=deadline)
|
||||
assert not ongoing_gr_order.is_ongoing()
|
||||
>>>>>>> 9cc7783 (install pytest)
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
import datetime
|
||||
|
||||
import pytest
|
||||
<<<<<<< HEAD
|
||||
from django.urls import reverse
|
||||
from django.utils import timezone
|
||||
|
||||
|
@ -10,11 +11,22 @@ pytestmark = pytest.mark.django_db
|
|||
|
||||
|
||||
def create_grouped_order(days_before_delivery_date, days_before_deadline, name):
|
||||
=======
|
||||
|
||||
from django.urls import reverse
|
||||
from django.utils import timezone
|
||||
from la_chariotte.order.models import Grouped_order
|
||||
|
||||
pytestmark = pytest.mark.django_db
|
||||
|
||||
def create_grouped_order(days_before_delivery_date,days_before_deadline,name):
|
||||
>>>>>>> 9cc7783 (install pytest)
|
||||
"""
|
||||
Creates a grouped order.
|
||||
"""
|
||||
date = timezone.now().date() + datetime.timedelta(days=days_before_delivery_date)
|
||||
deadline = timezone.now() + datetime.timedelta(days=days_before_deadline)
|
||||
<<<<<<< HEAD
|
||||
return GroupedOrder.objects.create(
|
||||
name=name, orga="test orga", delivery_date=date, deadline=deadline
|
||||
)
|
||||
|
@ -57,11 +69,36 @@ class TestGroupedOrderIndexView:
|
|||
days_before_delivery_date=-1, days_before_deadline=-3, name="old"
|
||||
)
|
||||
response = client.get(reverse("order:index"))
|
||||
=======
|
||||
return Grouped_order.objects.create(name=name, orga="test orga",delivery_date=date,deadline=deadline)
|
||||
|
||||
class TestGroupedOrderIndexView:
|
||||
def test_no_grouped_orders(self,client):
|
||||
"""
|
||||
If no grouped order exist, an appropriate message is displayed
|
||||
"""
|
||||
response = client.get(reverse('order:index'))
|
||||
assert response.status_code == 200
|
||||
assert "Pas de commande groupée pour l'instant" in response.content.decode()
|
||||
assert len(response.context['grouped_order_list']['old_grouped_orders']) == 0
|
||||
assert len(response.context['grouped_order_list']['orders_over_grouped_orders']) == 0
|
||||
assert len(response.context['grouped_order_list']['incoming_grouped_orders']) == 0
|
||||
|
||||
def test_grouped_orders_in_right_section(self,client):
|
||||
"""
|
||||
According to their delivery date and deadline, grouped orders are placed in the correct section : several gr orders
|
||||
"""
|
||||
future_grouped_order = create_grouped_order(days_before_delivery_date=5,days_before_deadline=2,name="future")
|
||||
crossed_deadline_gr_order = create_grouped_order(days_before_delivery_date=2, days_before_deadline=-1,name="crossed deadline")
|
||||
old_gr_order = create_grouped_order(days_before_delivery_date=-1, days_before_deadline=-3,name="old")
|
||||
response = client.get(reverse('order:index'))
|
||||
>>>>>>> 9cc7783 (install pytest)
|
||||
assert response.status_code == 200
|
||||
assert "Pas de commande groupée pour l'instant" not in response.content.decode()
|
||||
assert "Commandes groupées à venir" in response.content.decode()
|
||||
assert "Livraison à venir" in response.content.decode()
|
||||
assert "Livraison passée" in response.content.decode()
|
||||
<<<<<<< HEAD
|
||||
assert len(response.context["grouped_order_list"]["old_grouped_orders"]) == 1
|
||||
assert (
|
||||
len(
|
||||
|
@ -95,11 +132,27 @@ class TestGroupedOrderIndexView:
|
|||
days_before_delivery_date=-1, days_before_deadline=-3, name="passée"
|
||||
)
|
||||
response = client.get(reverse("order:index"))
|
||||
=======
|
||||
assert len(response.context['grouped_order_list']['old_grouped_orders']) == 1
|
||||
assert len(response.context['grouped_order_list']['orders_over_grouped_orders']) == 1
|
||||
assert len(response.context['grouped_order_list']['incoming_grouped_orders']) == 1
|
||||
assert response.context['grouped_order_list']['old_grouped_orders'][0] == old_gr_order
|
||||
assert response.context['grouped_order_list']['orders_over_grouped_orders'][0] == crossed_deadline_gr_order
|
||||
assert response.context['grouped_order_list']['incoming_grouped_orders'][0] == future_grouped_order
|
||||
|
||||
def test_grouped_orders_in_right_section__with_only_old(self,client):
|
||||
"""
|
||||
According to their delivery date and deadline, grouped orders are placed in correct section : only old gr order
|
||||
"""
|
||||
old_gr_order = create_grouped_order(days_before_delivery_date=-1, days_before_deadline=-3,name="passée")
|
||||
response = client.get(reverse('order:index'))
|
||||
>>>>>>> 9cc7783 (install pytest)
|
||||
assert response.status_code == 200
|
||||
assert "Pas de commande groupée pour l'instant" not in response.content.decode()
|
||||
assert "Commandes groupées à venir" not in response.content.decode()
|
||||
assert "Livraison à venir" not in response.content.decode()
|
||||
assert "Livraison passée" in response.content.decode()
|
||||
<<<<<<< HEAD
|
||||
assert len(response.context["grouped_order_list"]["old_grouped_orders"]) == 1
|
||||
assert (
|
||||
len(
|
||||
|
@ -125,11 +178,25 @@ class TestGroupedOrderIndexView:
|
|||
days_before_delivery_date=5, days_before_deadline=2, name="future"
|
||||
)
|
||||
response = client.get(reverse("order:index"))
|
||||
=======
|
||||
assert len(response.context['grouped_order_list']['old_grouped_orders']) == 1
|
||||
assert len(response.context['grouped_order_list']['orders_over_grouped_orders']) == 0
|
||||
assert len(response.context['grouped_order_list']['incoming_grouped_orders']) == 0
|
||||
assert response.context['grouped_order_list']['old_grouped_orders'][0] == old_gr_order
|
||||
|
||||
def test_grouped_orders_in_right_section__with_only_future(self,client):
|
||||
"""
|
||||
According to their delivery date and deadline, grouped orders are placed in correct section : only incoming gr order
|
||||
"""
|
||||
future_grouped_order = create_grouped_order(days_before_delivery_date=5,days_before_deadline=2,name="future")
|
||||
response = client.get(reverse('order:index'))
|
||||
>>>>>>> 9cc7783 (install pytest)
|
||||
assert response.status_code == 200
|
||||
assert "Pas de commande groupée pour l'instant" not in response.content.decode()
|
||||
assert "Commandes groupées à venir" in response.content.decode()
|
||||
assert "Livraison à venir" not in response.content.decode()
|
||||
assert "Livraison passée" not in response.content.decode()
|
||||
<<<<<<< HEAD
|
||||
assert len(response.context["grouped_order_list"]["old_grouped_orders"]) == 0
|
||||
assert (
|
||||
len(
|
||||
|
@ -191,3 +258,9 @@ class TestGroupedOrderDetailView:
|
|||
assert item.ordered_nb == 1
|
||||
order = Order.objects.first()
|
||||
assert order.ordered_items.count() == 1
|
||||
=======
|
||||
assert len(response.context['grouped_order_list']['old_grouped_orders']) == 0
|
||||
assert len(response.context['grouped_order_list']['orders_over_grouped_orders']) == 0
|
||||
assert len(response.context['grouped_order_list']['incoming_grouped_orders']) == 1
|
||||
assert response.context['grouped_order_list']['incoming_grouped_orders'][0] == future_grouped_order
|
||||
>>>>>>> 9cc7783 (install pytest)
|
||||
|
|
2
setup.cfg
Normal file
2
setup.cfg
Normal file
|
@ -0,0 +1,2 @@
|
|||
[tool:pytest]
|
||||
DJANGO_SETTINGS_MODULE = la_chariotte.settings
|
Loading…
Reference in a new issue