la-chariotte/la_chariotte/order/tests/test_models.py
2023-04-19 17:59:06 +02:00

69 lines
2.3 KiB
Python

import datetime
from django.utils import timezone
<<<<<<< HEAD
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()
def test_is_to_be_delivered_with_today_delivery(self):
"""
is_to_be_delivered() returns True if the delivery date is today
"""
del_date = timezone.now().date()
gr_order = GroupedOrder(delivery_date=del_date)
assert gr_order.is_to_be_delivered()
def test_is_to_be_delivered_with_old_grouped_order(self):
"""
is_to_be_delivered() returns False if the delivery date is passed
"""
del_date = timezone.now().date() - datetime.timedelta(days=1)
old_gr_order = GroupedOrder(delivery_date=del_date)
assert not old_gr_order.is_to_be_delivered()
def test_is_to_be_delivered_with_crossed_deadline_grouped_order(self):
"""
is_to_be_delivered() returns True even if the deadline is crossed
"""
deadline = timezone.now() - datetime.timedelta(hours=1)
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)