add test case

This commit is contained in:
Kenneth SOARES
2025-09-30 17:20:47 +02:00
parent 0fef2e0071
commit 1b00998144
2 changed files with 37 additions and 0 deletions

View File

@@ -1402,5 +1402,9 @@ class InvoiceCall(models.Model):
verbose_name = _("Invoice call") verbose_name = _("Invoice call")
verbose_name_plural = _("Invoice calls") verbose_name_plural = _("Invoice calls")
def save(self, *args, **kwargs):
self.month = self._meta.get_field("month").to_python(self.month)
super().save(*args, **kwargs)
def __str__(self): def __str__(self):
return f"invoice call of {self.month} made by {self.club}" return f"invoice call of {self.month} made by {self.club}"

View File

@@ -0,0 +1,33 @@
from datetime import date
import pytest
from model_bakery import baker
from club.models import Club
from counter.models import InvoiceCall
@pytest.mark.django_db
def test_invoice_date_with_date():
club = baker.make(Club)
invoice = InvoiceCall.objects.create(club=club, month=date(2025, 10, 20))
assert not invoice.is_validated
assert str(invoice) == f"invoice call of {invoice.month} made by {club}"
assert invoice.month == date(2025, 10, 1)
@pytest.mark.django_db
def test_invoice_date_with_string():
club = baker.make(Club)
invoice = InvoiceCall.objects.create(club=club, month="2025-10")
assert invoice.month == date(2025, 10, 1)
@pytest.mark.django_db
def test_invoice_call_invalid_month_string():
club = baker.make(Club)
with pytest.raises(ValueError):
InvoiceCall.objects.create(club=club, month="2025-13")