misc: use django.utils.timezone.now instead of datetime (#90048)
gitea/lingo/pipeline/head This commit looks good Details

This commit is contained in:
Lauréline Guérin 2024-04-26 14:24:59 +02:00
parent 7c077e2d9c
commit cbd1ae509d
No known key found for this signature in database
GPG Key ID: 1FAB9B9B4F93D473
22 changed files with 191 additions and 199 deletions

View File

@ -408,7 +408,7 @@ class RefundSerializer(serializers.ModelSerializer):
Q(pool__isnull=True) | Q(pool__campaign__finalized=True),
uuid=value,
regie=self.regie,
date_publication__lte=datetime.date.today(),
date_publication__lte=now().date(),
cancelled_at__isnull=True,
)
except Credit.DoesNotExist:

View File

@ -49,7 +49,7 @@ class BasketsView(APIView):
if basket is not None:
return Response({'data': {'basket_id': str(basket.uuid)}})
today = datetime.date.today()
today = now().date()
invoice = DraftInvoice.objects.create(
regie=regie,
label=_('Invoice from %s') % today.strftime('%d/%m/%Y'),
@ -192,7 +192,7 @@ class BasketLineCloseView(APIView):
) in self.line.formatted_items:
DraftInvoiceLine.objects.create(
invoice=self.line.basket.draft_invoice,
event_date=datetime.date.today(),
event_date=now().date(),
slug=slug,
event_slug=event_slug,
event_label=event_label,

View File

@ -22,6 +22,7 @@ from django.db.models import Q
from django.http import Http404, HttpResponse
from django.shortcuts import get_object_or_404
from django.template.defaultfilters import floatformat
from django.utils.timezone import now
from django.utils.translation import gettext_lazy as _
from django.utils.translation import gettext_noop as N_
from rest_framework import permissions
@ -109,7 +110,7 @@ class InvoicingInvoices(PayerMixin, APIView):
Q(pool__isnull=True) | Q(pool__campaign__finalized=True),
regie=regie,
remaining_amount__gt=0,
date_publication__lte=datetime.date.today(),
date_publication__lte=now().date(),
payer_external_id=payer_external_id,
basket__isnull=True,
cancelled_at__isnull=True,
@ -173,7 +174,7 @@ class InvoicingHistoryInvoices(InvoicingInvoices):
Q(pool__isnull=True) | Q(pool__campaign__finalized=True),
regie=regie,
remaining_amount=0,
date_publication__lte=datetime.date.today(),
date_publication__lte=now().date(),
payer_external_id=payer_external_id,
cancelled_at__isnull=True,
).order_by('-created_at')
@ -198,7 +199,7 @@ class InvoicingInvoice(PayerMixin, APIView):
Q(pool__isnull=True) | Q(pool__campaign__finalized=True),
uuid=invoice_identifier,
regie=regie,
date_publication__lte=datetime.date.today(),
date_publication__lte=now().date(),
payer_external_id=payer_external_id,
cancelled_at__isnull=True,
)
@ -226,7 +227,7 @@ class InvoicingInvoicePDF(PayerMixin, APIView):
Q(pool__isnull=True) | Q(pool__campaign__finalized=True),
uuid=invoice_identifier,
regie=regie,
date_publication__lte=datetime.date.today(),
date_publication__lte=now().date(),
payer_external_id=payer_external_id,
cancelled_at__isnull=True,
)
@ -257,7 +258,7 @@ class InvoicingInvoicePaymentsPDF(PayerMixin, APIView):
Q(pool__isnull=True) | Q(pool__campaign__finalized=True),
uuid=invoice_identifier,
regie=regie,
date_publication__lte=datetime.date.today(),
date_publication__lte=now().date(),
payer_external_id=payer_external_id,
remaining_amount=0,
cancelled_at__isnull=True,
@ -502,7 +503,7 @@ class InvoicingCredits(PayerMixin, APIView):
regie=regie,
remaining_amount__gt=0,
payer_external_id=payer_external_id,
date_publication__lte=datetime.date.today(),
date_publication__lte=now().date(),
cancelled_at__isnull=True,
).order_by('-created_at')
@ -545,7 +546,7 @@ class InvoicingHistoryCredits(InvoicingCredits):
regie=regie,
remaining_amount=0,
payer_external_id=payer_external_id,
date_publication__lte=datetime.date.today(),
date_publication__lte=now().date(),
cancelled_at__isnull=True,
).order_by('-created_at')
@ -570,7 +571,7 @@ class InvoicingCreditPDF(PayerMixin, APIView):
uuid=credit_identifier,
regie=regie,
payer_external_id=payer_external_id,
date_publication__lte=datetime.date.today(),
date_publication__lte=now().date(),
cancelled_at__isnull=True,
)
result = credit.html()

View File

@ -165,7 +165,7 @@ class Basket(models.Model):
return 0
credit_qs = Credit.objects.filter(
models.Q(pool__isnull=True) | models.Q(pool__campaign__finalized=True),
date_publication__lte=datetime.date.today(),
date_publication__lte=now().date(),
cancelled_at__isnull=True,
remaining_amount__gt=0,
regie=self.regie,

View File

@ -1,6 +1,5 @@
import datetime
from django.db import migrations, models
from django.utils.timezone import now
class Migration(migrations.Migration):
@ -12,13 +11,13 @@ class Migration(migrations.Migration):
migrations.AddField(
model_name='draftinvoiceline',
name='event_date',
field=models.DateField(default=datetime.date.today),
field=models.DateField(default=now().date),
preserve_default=False,
),
migrations.AddField(
model_name='invoiceline',
name='event_date',
field=models.DateField(default=datetime.date.today),
field=models.DateField(default=now().date),
preserve_default=False,
),
]

View File

@ -1,7 +1,6 @@
import datetime
import django.db.models.deletion
from django.db import migrations, models
from django.utils.timezone import now
class Migration(migrations.Migration):
@ -13,7 +12,7 @@ class Migration(migrations.Migration):
migrations.AddField(
model_name='credit',
name='date_publication',
field=models.DateField(default=datetime.date.today, verbose_name='Publication date'),
field=models.DateField(default=now().date, verbose_name='Publication date'),
preserve_default=False,
),
migrations.AddField(

View File

@ -18,7 +18,6 @@ import base64
import collections
import copy
import dataclasses
import datetime
import decimal
import logging
import sys
@ -1037,7 +1036,7 @@ class DraftInvoice(AbstractInvoice):
credit.set_number()
credit.assigned_amount = 0
credit.remaining_amount = 0
credit.label = _('Credit from %s') % datetime.date.today().strftime('%d/%m/%Y')
credit.label = _('Credit from %s') % now().strftime('%d/%m/%Y')
credit.cancelled_at = None
credit.cancelled_by = None
credit.cancellation_reason = None
@ -1110,7 +1109,7 @@ class Invoice(AbstractInvoice):
date_limit = self.date_due if for_backoffice else self.date_payment_deadline
if paid:
payable = False
elif date_limit < datetime.date.today():
elif date_limit < now().date():
payable = False
label = self.label
if label_plus:
@ -1730,7 +1729,7 @@ class CreditAssignment(models.Model):
def make_assignments(cls, regie, basket):
credit_qs = Credit.objects.filter(
models.Q(pool__isnull=True) | models.Q(pool__campaign__finalized=True),
date_publication__lte=datetime.date.today(),
date_publication__lte=now().date(),
cancelled_at__isnull=True,
remaining_amount__gt=0,
regie=regie,

View File

@ -14,13 +14,13 @@
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
import datetime
import json
from django.contrib import messages
from django.http import HttpResponse, HttpResponseRedirect
from django.urls import reverse, reverse_lazy
from django.utils.encoding import force_str
from django.utils.timezone import now
from django.utils.translation import gettext_lazy as _
from django.utils.translation import ngettext
from django.views.generic import FormView
@ -36,9 +36,8 @@ class ConfigExportView(FormView):
def form_valid(self, form):
response = HttpResponse(content_type='application/json')
today = datetime.date.today()
response['Content-Disposition'] = 'attachment; filename="export_invoicing_config_{}.json"'.format(
today.strftime('%Y%m%d')
now().strftime('%Y%m%d')
)
json_dump(export_site(**form.cleaned_data), response, indent=2)
return response

View File

@ -14,10 +14,9 @@
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
import datetime
from django.http import HttpResponse
from django.urls import reverse
from django.utils.timezone import now
from django.views.generic import CreateView, DeleteView, DetailView, ListView, UpdateView
from lingo.export_import.views import WithApplicationsMixin
@ -113,9 +112,8 @@ class PayerExport(DetailView):
def get(self, request, *args, **kwargs):
response = HttpResponse(content_type='application/json')
today = datetime.date.today()
attachment = 'attachment; filename="export_payer_{}_{}.json"'.format(
self.get_object().slug, today.strftime('%Y%m%d')
self.get_object().slug, now().strftime('%Y%m%d')
)
response['Content-Disposition'] = attachment
json_dump({'payers': [self.get_object().export_json()]}, response, indent=2)

View File

@ -16,7 +16,6 @@
import collections
import csv
import datetime
from django.db import transaction
from django.db.models import (
@ -37,6 +36,7 @@ from django.http import Http404, HttpResponse
from django.shortcuts import get_object_or_404, redirect
from django.template.defaultfilters import yesno
from django.urls import reverse
from django.utils.timezone import now
from django.utils.translation import gettext_lazy as _
from django.utils.translation import pgettext
from django.views.generic import CreateView, DeleteView, DetailView, FormView, ListView, UpdateView
@ -228,9 +228,8 @@ class RegieExport(DetailView):
def get(self, request, *args, **kwargs):
response = HttpResponse(content_type='application/json')
today = datetime.date.today()
attachment = 'attachment; filename="export_regie_{}_{}.json"'.format(
self.get_object().slug, today.strftime('%Y%m%d')
self.get_object().slug, now().strftime('%Y%m%d')
)
response['Content-Disposition'] = attachment
json_dump({'regies': [self.get_object().export_json()]}, response, indent=2)

View File

@ -14,7 +14,6 @@
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
import datetime
import json
from collections import defaultdict
from operator import itemgetter
@ -25,6 +24,7 @@ from django.http import Http404, HttpResponse, HttpResponseBadRequest, HttpRespo
from django.shortcuts import get_object_or_404
from django.urls import reverse, reverse_lazy
from django.utils.encoding import force_str
from django.utils.timezone import now
from django.utils.translation import gettext_lazy as _
from django.utils.translation import ngettext
from django.views.generic import (
@ -73,9 +73,8 @@ class ConfigExportView(FormView):
def form_valid(self, form):
response = HttpResponse(content_type='application/json')
today = datetime.date.today()
response['Content-Disposition'] = 'attachment; filename="export_pricing_config_{}.json"'.format(
today.strftime('%Y%m%d')
now().strftime('%Y%m%d')
)
json_dump(export_site(**form.cleaned_data), response, indent=2)
return response
@ -282,9 +281,8 @@ class CriteriaCategoryExport(DetailView):
def get(self, request, *args, **kwargs):
response = HttpResponse(content_type='application/json')
today = datetime.date.today()
attachment = 'attachment; filename="export_pricing_category_{}_{}.json"'.format(
self.get_object().slug, today.strftime('%Y%m%d')
self.get_object().slug, now().strftime('%Y%m%d')
)
response['Content-Disposition'] = attachment
json_dump({'pricing_categories': [self.get_object().export_json()]}, response, indent=2)
@ -442,9 +440,8 @@ class AgendaExport(AgendaMixin, DetailView):
def get(self, request, *args, **kwargs):
response = HttpResponse(content_type='application/json')
today = datetime.date.today()
response['Content-Disposition'] = 'attachment; filename="export_pricing_agenda_{}_{}.json"'.format(
self.get_object().slug, today.strftime('%Y%m%d')
self.get_object().slug, now().strftime('%Y%m%d')
)
json_dump({'agendas': [self.get_object().export_json()]}, response, indent=2)
return response
@ -739,9 +736,8 @@ class PricingExport(DetailView):
def get(self, request, *args, **kwargs):
response = HttpResponse(content_type='application/json')
today = datetime.date.today()
attachment = 'attachment; filename="export_pricing_{}_{}.json"'.format(
self.get_object().slug, today.strftime('%Y%m%d')
self.get_object().slug, now().strftime('%Y%m%d')
)
response['Content-Disposition'] = attachment
json_dump({'pricings': [self.get_object().export_json()]}, response, indent=2)
@ -1064,9 +1060,8 @@ class CheckTypeGroupExport(DetailView):
def get(self, request, *args, **kwargs):
response = HttpResponse(content_type='application/json')
today = datetime.date.today()
attachment = 'attachment; filename="export_check_type_group_{}_{}.json"'.format(
self.get_object().slug, today.strftime('%Y%m%d')
self.get_object().slug, now().strftime('%Y%m%d')
)
response['Content-Disposition'] = attachment
json_dump({'check_type_groups': [self.get_object().export_json()]}, response, indent=2)

View File

@ -35,7 +35,7 @@ def test_list_credits(mock_payer, app, user):
invoice = Invoice.objects.create(
label='My invoice',
date_publication=datetime.date(2022, 10, 1),
date_payment_deadline=datetime.date.today(),
date_payment_deadline=now().date(),
date_due=datetime.date(2022, 10, 31),
regie=regie,
payer_external_id='payer:1',
@ -95,14 +95,14 @@ def test_list_credits(mock_payer, app, user):
),
'total_amount': 42,
'remaining_amount': 41,
'created': datetime.date.today().isoformat(),
'created': now().date().isoformat(),
'has_pdf': True,
}
]
assert mock_payer.call_args_list == [mock.call(regie, mock.ANY, 'foobar')]
# publication date is in the future
credit.date_publication = datetime.date.today() + datetime.timedelta(days=1)
credit.date_publication = now().date() + datetime.timedelta(days=1)
credit.save()
resp = app.get('/api/regie/foo/credits/', params={'NameID': 'foobar'})
assert resp.json['err'] == 0
@ -195,7 +195,7 @@ def test_list_credits_for_payer(app, user):
invoice = Invoice.objects.create(
label='My invoice',
date_publication=datetime.date(2022, 10, 1),
date_payment_deadline=datetime.date.today(),
date_payment_deadline=now().date(),
date_due=datetime.date(2022, 10, 31),
regie=regie,
payer_external_id='payer:1',
@ -254,13 +254,13 @@ def test_list_credits_for_payer(app, user):
),
'total_amount': 42,
'remaining_amount': 41,
'created': datetime.date.today().isoformat(),
'created': now().date().isoformat(),
'has_pdf': True,
}
]
# publication date is in the future
credit.date_publication = datetime.date.today() + datetime.timedelta(days=1)
credit.date_publication = now().date() + datetime.timedelta(days=1)
credit.save()
resp = app.get('/api/regie/foo/credits/', params={'payer_external_id': 'payer:1'})
assert resp.json['err'] == 0
@ -338,7 +338,7 @@ def test_list_history_credits(mock_payer, app, user):
invoice = Invoice.objects.create(
label='My invoice',
date_publication=datetime.date(2022, 10, 1),
date_payment_deadline=datetime.date.today(),
date_payment_deadline=now().date(),
date_due=datetime.date(2022, 10, 31),
regie=regie,
payer_external_id='payer:1',
@ -411,14 +411,14 @@ def test_list_history_credits(mock_payer, app, user):
),
'total_amount': 42,
'remaining_amount': 0,
'created': datetime.date.today().isoformat(),
'created': now().date().isoformat(),
'has_pdf': True,
}
]
assert mock_payer.call_args_list == [mock.call(regie, mock.ANY, 'foobar')]
# publication date is in the future
credit.date_publication = datetime.date.today() + datetime.timedelta(days=1)
credit.date_publication = now().date() + datetime.timedelta(days=1)
credit.save()
resp = app.get('/api/regie/foo/credits/history/', params={'NameID': 'foobar'})
assert resp.json['err'] == 0
@ -498,7 +498,7 @@ def test_list_history_credits_for_payer(app, user):
invoice = Invoice.objects.create(
label='My invoice',
date_publication=datetime.date(2022, 10, 1),
date_payment_deadline=datetime.date.today(),
date_payment_deadline=now().date(),
date_due=datetime.date(2022, 10, 31),
regie=regie,
payer_external_id='payer:1',
@ -569,13 +569,13 @@ def test_list_history_credits_for_payer(app, user):
),
'total_amount': 42,
'remaining_amount': 0,
'created': datetime.date.today().isoformat(),
'created': now().date().isoformat(),
'has_pdf': True,
}
]
# publication date is in the future
credit.date_publication = datetime.date.today() + datetime.timedelta(days=1)
credit.date_publication = now().date() + datetime.timedelta(days=1)
credit.save()
resp = app.get('/api/regie/foo/credits/history/', params={'payer_external_id': 'payer:1'})
assert resp.json['err'] == 0
@ -656,7 +656,7 @@ def test_pdf_credit(mock_payer, app, user):
assert resp.headers['Content-Disposition'] == 'attachment; filename="%s.pdf"' % credit.formatted_number
# publication date is in the future
credit.date_publication = datetime.date.today() + datetime.timedelta(days=1)
credit.date_publication = now().date() + datetime.timedelta(days=1)
credit.save()
app.get('/api/regie/foo/credit/%s/pdf/' % str(credit.uuid), params={'NameID': 'foobar'}, status=404)
@ -746,7 +746,7 @@ def test_pdf_credit_for_payer(app, user):
credit.regie = other_regie
credit.save()
# publication date is in the future
credit.date_publication = datetime.date.today() + datetime.timedelta(days=1)
credit.date_publication = now().date() + datetime.timedelta(days=1)
credit.save()
app.get(
'/api/regie/foo/credit/%s/pdf/' % str(credit.uuid),

View File

@ -41,7 +41,7 @@ def test_list_invoices(mock_payer, app, user):
invoice = Invoice.objects.create(
label='My invoice',
date_publication=datetime.date(2022, 10, 1),
date_payment_deadline=datetime.date.today(),
date_payment_deadline=now().date(),
date_due=datetime.date(2022, 10, 31),
regie=regie,
payer_external_id='payer:1',
@ -60,7 +60,7 @@ def test_list_invoices(mock_payer, app, user):
# invoice with something to pay
line = InvoiceLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
invoice=invoice,
quantity=1,
unit_amount=42,
@ -73,7 +73,7 @@ def test_list_invoices(mock_payer, app, user):
'amount': 42,
'total_amount': 42,
'remaining_amount': 42,
'created': datetime.date.today().isoformat(),
'created': now().date().isoformat(),
'display_id': 'F%02d-%s-0000001'
% (
regie.pk,
@ -87,7 +87,7 @@ def test_list_invoices(mock_payer, app, user):
'label': 'My invoice',
'online_payment': True,
'paid': False,
'pay_limit_date': datetime.date.today().isoformat(),
'pay_limit_date': now().date().isoformat(),
'due_date': invoice.date_due.isoformat(),
'payment_deadline_date': invoice.date_payment_deadline.isoformat(),
'disabled': False,
@ -95,7 +95,7 @@ def test_list_invoices(mock_payer, app, user):
]
# publication date is in the future
invoice.date_publication = datetime.date.today() + datetime.timedelta(days=1)
invoice.date_publication = now().date() + datetime.timedelta(days=1)
invoice.save()
resp = app.get('/api/regie/foo/invoices/', params={'NameID': 'foobar'})
assert resp.json['err'] == 0
@ -103,7 +103,7 @@ def test_list_invoices(mock_payer, app, user):
# other regie
other_regie = Regie.objects.create(label='Other Foo')
invoice.date_publication = datetime.date.today()
invoice.date_publication = now().date()
invoice.regie = other_regie
invoice.save()
resp = app.get('/api/regie/foo/invoices/', params={'NameID': 'foobar'})
@ -130,7 +130,7 @@ def test_list_invoices(mock_payer, app, user):
'amount': 41,
'total_amount': 42,
'remaining_amount': 41,
'created': datetime.date.today().isoformat(),
'created': now().date().isoformat(),
'display_id': 'F%02d-%s-0000001'
% (
regie.pk,
@ -144,7 +144,7 @@ def test_list_invoices(mock_payer, app, user):
'label': 'My invoice',
'online_payment': True,
'paid': False,
'pay_limit_date': datetime.date.today().isoformat(),
'pay_limit_date': now().date().isoformat(),
'due_date': invoice.date_due.isoformat(),
'payment_deadline_date': invoice.date_payment_deadline.isoformat(),
'disabled': False,
@ -173,7 +173,7 @@ def test_list_invoices(mock_payer, app, user):
# payment deadline is in past
mock_payer.side_effect = None
mock_payer.return_value = 'payer:1'
invoice.date_payment_deadline = datetime.date.today() - datetime.timedelta(days=1)
invoice.date_payment_deadline = now().date() - datetime.timedelta(days=1)
invoice.save()
resp = app.get('/api/regie/foo/invoices/', params={'NameID': 'foobar'})
assert resp.json['data'][0]['disabled'] is True
@ -246,7 +246,7 @@ def test_list_invoices_for_payer(app, user):
label='My invoice',
date_publication=datetime.date(2022, 10, 1),
date_payment_deadline=datetime.date(2022, 10, 31),
date_due=datetime.date.today(),
date_due=now().date(),
regie=regie,
payer_external_id='payer:1',
)
@ -262,7 +262,7 @@ def test_list_invoices_for_payer(app, user):
# invoice with something to pay
line = InvoiceLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
label='A line',
invoice=invoice,
quantity=1,
@ -276,7 +276,7 @@ def test_list_invoices_for_payer(app, user):
'amount': 42,
'total_amount': 42,
'remaining_amount': 42,
'created': datetime.date.today().isoformat(),
'created': now().date().isoformat(),
'display_id': 'F%02d-%s-0000001'
% (
regie.pk,
@ -290,7 +290,7 @@ def test_list_invoices_for_payer(app, user):
'label': 'My invoice',
'online_payment': False,
'paid': False,
'pay_limit_date': datetime.date.today().isoformat(),
'pay_limit_date': now().date().isoformat(),
'due_date': invoice.date_due.isoformat(),
'payment_deadline_date': invoice.date_payment_deadline.isoformat(),
'disabled': False,
@ -303,7 +303,7 @@ def test_list_invoices_for_payer(app, user):
'amount': 42,
'total_amount': 42,
'remaining_amount': 42,
'created': datetime.date.today().isoformat(),
'created': now().date().isoformat(),
'display_id': 'F%02d-%s-0000001'
% (
regie.pk,
@ -321,7 +321,7 @@ def test_list_invoices_for_payer(app, user):
),
'online_payment': False,
'paid': False,
'pay_limit_date': datetime.date.today().isoformat(),
'pay_limit_date': now().date().isoformat(),
'due_date': invoice.date_due.isoformat(),
'payment_deadline_date': invoice.date_payment_deadline.isoformat(),
'disabled': False,
@ -342,7 +342,7 @@ def test_list_invoices_for_payer(app, user):
]
# publication date is in the future
invoice.date_publication = datetime.date.today() + datetime.timedelta(days=1)
invoice.date_publication = now().date() + datetime.timedelta(days=1)
invoice.save()
resp = app.get('/api/regie/foo/invoices/', params={'payer_external_id': 'payer:1'})
assert resp.json['err'] == 0
@ -350,7 +350,7 @@ def test_list_invoices_for_payer(app, user):
# other regie
other_regie = Regie.objects.create(label='Other Foo')
invoice.date_publication = datetime.date.today()
invoice.date_publication = now().date()
invoice.regie = other_regie
invoice.save()
resp = app.get('/api/regie/foo/invoices/', params={'payer_external_id': 'payer:1'})
@ -377,7 +377,7 @@ def test_list_invoices_for_payer(app, user):
'amount': 41,
'total_amount': 42,
'remaining_amount': 41,
'created': datetime.date.today().isoformat(),
'created': now().date().isoformat(),
'display_id': 'F%02d-%s-0000001'
% (
regie.pk,
@ -391,7 +391,7 @@ def test_list_invoices_for_payer(app, user):
'label': 'My invoice',
'online_payment': False,
'paid': False,
'pay_limit_date': datetime.date.today().isoformat(),
'pay_limit_date': now().date().isoformat(),
'due_date': invoice.date_due.isoformat(),
'payment_deadline_date': invoice.date_payment_deadline.isoformat(),
'disabled': False,
@ -404,7 +404,7 @@ def test_list_invoices_for_payer(app, user):
'amount': 41,
'total_amount': 42,
'remaining_amount': 41,
'created': datetime.date.today().isoformat(),
'created': now().date().isoformat(),
'display_id': 'F%02d-%s-0000001'
% (
regie.pk,
@ -422,7 +422,7 @@ def test_list_invoices_for_payer(app, user):
),
'online_payment': False,
'paid': False,
'pay_limit_date': datetime.date.today().isoformat(),
'pay_limit_date': now().date().isoformat(),
'due_date': invoice.date_due.isoformat(),
'payment_deadline_date': invoice.date_payment_deadline.isoformat(),
'disabled': False,
@ -451,7 +451,7 @@ def test_list_invoices_for_payer(app, user):
# another lines with something to pay
line2 = InvoiceLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
label='Another line',
invoice=invoice,
quantity=1,
@ -469,7 +469,7 @@ def test_list_invoices_for_payer(app, user):
activity_label='Agenda A',
)
line3 = InvoiceLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
label='Another line again',
invoice=invoice,
quantity=1,
@ -485,7 +485,7 @@ def test_list_invoices_for_payer(app, user):
'amount': 10,
'total_amount': 52,
'remaining_amount': 10,
'created': datetime.date.today().isoformat(),
'created': now().date().isoformat(),
'display_id': 'F%02d-%s-0000001'
% (
regie.pk,
@ -503,7 +503,7 @@ def test_list_invoices_for_payer(app, user):
),
'online_payment': False,
'paid': False,
'pay_limit_date': datetime.date.today().isoformat(),
'pay_limit_date': now().date().isoformat(),
'due_date': invoice.date_due.isoformat(),
'payment_deadline_date': invoice.date_payment_deadline.isoformat(),
'disabled': False,
@ -559,7 +559,7 @@ def test_list_invoices_for_payer(app, user):
]
# due date is in past
invoice.date_due = datetime.date.today() - datetime.timedelta(days=1)
invoice.date_due = now().date() - datetime.timedelta(days=1)
invoice.save()
resp = app.get('/api/regie/foo/invoices/', params={'payer_external_id': 'payer:1'})
assert resp.json['data'][0]['disabled'] is True
@ -629,7 +629,7 @@ def test_list_history_invoices(mock_payer, app, user):
invoice = Invoice.objects.create(
label='My invoice',
date_publication=datetime.date(2022, 10, 1),
date_payment_deadline=datetime.date.today(),
date_payment_deadline=now().date(),
date_due=datetime.date(2022, 10, 31),
regie=regie,
payer_external_id='payer:1',
@ -637,7 +637,7 @@ def test_list_history_invoices(mock_payer, app, user):
invoice.set_number()
invoice.save()
line = InvoiceLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
invoice=invoice,
quantity=1,
unit_amount=42,
@ -674,7 +674,7 @@ def test_list_history_invoices(mock_payer, app, user):
'amount': 0,
'total_amount': 42,
'remaining_amount': 0,
'created': datetime.date.today().isoformat(),
'created': now().date().isoformat(),
'display_id': 'F%02d-%s-0000001'
% (
regie.pk,
@ -696,7 +696,7 @@ def test_list_history_invoices(mock_payer, app, user):
]
# publication date is in the future
invoice.date_publication = datetime.date.today() + datetime.timedelta(days=1)
invoice.date_publication = now().date() + datetime.timedelta(days=1)
invoice.save()
resp = app.get('/api/regie/foo/invoices/history/', params={'NameID': 'foobar'})
assert resp.json['err'] == 0
@ -704,7 +704,7 @@ def test_list_history_invoices(mock_payer, app, user):
# other regie
other_regie = Regie.objects.create(label='Other Foo')
invoice.date_publication = datetime.date.today()
invoice.date_publication = now().date()
invoice.regie = other_regie
invoice.save()
resp = app.get('/api/regie/foo/invoices/history/', params={'NameID': 'foobar'})
@ -792,14 +792,14 @@ def test_list_history_invoices_for_payer(app, user):
label='My invoice',
date_publication=datetime.date(2022, 10, 1),
date_payment_deadline=datetime.date(2022, 10, 31),
date_due=datetime.date.today(),
date_due=now().date(),
regie=regie,
payer_external_id='payer:1',
)
invoice.set_number()
invoice.save()
line = InvoiceLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
invoice=invoice,
quantity=1,
unit_amount=42,
@ -833,7 +833,7 @@ def test_list_history_invoices_for_payer(app, user):
'amount': 0,
'total_amount': 42,
'remaining_amount': 0,
'created': datetime.date.today().isoformat(),
'created': now().date().isoformat(),
'display_id': 'F%02d-%s-0000001'
% (
regie.pk,
@ -855,7 +855,7 @@ def test_list_history_invoices_for_payer(app, user):
]
# publication date is in the future
invoice.date_publication = datetime.date.today() + datetime.timedelta(days=1)
invoice.date_publication = now().date() + datetime.timedelta(days=1)
invoice.save()
resp = app.get('/api/regie/foo/invoices/history/', params={'payer_external_id': 'payer:1'})
assert resp.json['err'] == 0
@ -863,7 +863,7 @@ def test_list_history_invoices_for_payer(app, user):
# other regie
other_regie = Regie.objects.create(label='Other Foo')
invoice.date_publication = datetime.date.today()
invoice.date_publication = now().date()
invoice.regie = other_regie
invoice.save()
resp = app.get('/api/regie/foo/invoices/history/', params={'payer_external_id': 'payer:1'})
@ -936,7 +936,7 @@ def test_detail_invoice(mock_payer, app, user):
invoice = Invoice.objects.create(
label='My invoice',
date_publication=datetime.date(2022, 10, 1),
date_payment_deadline=datetime.date.today(),
date_payment_deadline=now().date(),
date_due=datetime.date(2022, 10, 31),
regie=regie,
payer_external_id='payer:1',
@ -944,7 +944,7 @@ def test_detail_invoice(mock_payer, app, user):
invoice.set_number()
invoice.save()
line = InvoiceLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
invoice=invoice,
quantity=1,
unit_amount=42,
@ -958,7 +958,7 @@ def test_detail_invoice(mock_payer, app, user):
'amount': 42,
'total_amount': 42,
'remaining_amount': 42,
'created': datetime.date.today().isoformat(),
'created': now().date().isoformat(),
'display_id': 'F%02d-%s-0000001'
% (
regie.pk,
@ -972,20 +972,20 @@ def test_detail_invoice(mock_payer, app, user):
'label': 'My invoice',
'online_payment': True,
'paid': False,
'pay_limit_date': datetime.date.today().isoformat(),
'pay_limit_date': now().date().isoformat(),
'due_date': invoice.date_due.isoformat(),
'payment_deadline_date': invoice.date_payment_deadline.isoformat(),
'disabled': False,
}
# publication date is in the future
invoice.date_publication = datetime.date.today() + datetime.timedelta(days=1)
invoice.date_publication = now().date() + datetime.timedelta(days=1)
invoice.save()
app.get('/api/regie/foo/invoice/%s/' % str(invoice.uuid), params={'NameID': 'foobar'}, status=404)
# other regie
other_regie = Regie.objects.create(label='Other Foo')
invoice.date_publication = datetime.date.today()
invoice.date_publication = now().date()
invoice.regie = other_regie
invoice.save()
app.get('/api/regie/foo/invoice/%s/' % str(invoice.uuid), params={'NameID': 'foobar'}, status=404)
@ -1009,7 +1009,7 @@ def test_detail_invoice(mock_payer, app, user):
'amount': 41,
'total_amount': 42,
'remaining_amount': 41,
'created': datetime.date.today().isoformat(),
'created': now().date().isoformat(),
'display_id': 'F%02d-%s-0000001'
% (
regie.pk,
@ -1023,7 +1023,7 @@ def test_detail_invoice(mock_payer, app, user):
'label': 'My invoice',
'online_payment': True,
'paid': False,
'pay_limit_date': datetime.date.today().isoformat(),
'pay_limit_date': now().date().isoformat(),
'due_date': invoice.date_due.isoformat(),
'payment_deadline_date': invoice.date_payment_deadline.isoformat(),
'disabled': False,
@ -1038,7 +1038,7 @@ def test_detail_invoice(mock_payer, app, user):
'amount': 0,
'total_amount': 42,
'remaining_amount': 0,
'created': datetime.date.today().isoformat(),
'created': now().date().isoformat(),
'display_id': 'F%02d-%s-0000001'
% (
regie.pk,
@ -1113,14 +1113,14 @@ def test_detail_invoice_for_payer(app, user):
label='My invoice',
date_publication=datetime.date(2022, 10, 1),
date_payment_deadline=datetime.date(2022, 10, 31),
date_due=datetime.date.today(),
date_due=now().date(),
regie=regie,
payer_external_id='payer:1',
)
invoice.set_number()
invoice.save()
line = InvoiceLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
invoice=invoice,
quantity=1,
unit_amount=42,
@ -1133,7 +1133,7 @@ def test_detail_invoice_for_payer(app, user):
'amount': 42,
'total_amount': 42,
'remaining_amount': 42,
'created': datetime.date.today().isoformat(),
'created': now().date().isoformat(),
'display_id': 'F%02d-%s-0000001'
% (
regie.pk,
@ -1147,14 +1147,14 @@ def test_detail_invoice_for_payer(app, user):
'label': 'My invoice',
'online_payment': False,
'paid': False,
'pay_limit_date': datetime.date.today().isoformat(),
'pay_limit_date': now().date().isoformat(),
'due_date': invoice.date_due.isoformat(),
'payment_deadline_date': invoice.date_payment_deadline.isoformat(),
'disabled': False,
}
# publication date is in the future
invoice.date_publication = datetime.date.today() + datetime.timedelta(days=1)
invoice.date_publication = now().date() + datetime.timedelta(days=1)
invoice.save()
app.get(
'/api/regie/foo/invoice/%s/' % str(invoice.uuid), params={'payer_external_id': 'payer:1'}, status=404
@ -1162,7 +1162,7 @@ def test_detail_invoice_for_payer(app, user):
# other regie
other_regie = Regie.objects.create(label='Other Foo')
invoice.date_publication = datetime.date.today()
invoice.date_publication = now().date()
invoice.regie = other_regie
invoice.save()
app.get(
@ -1188,7 +1188,7 @@ def test_detail_invoice_for_payer(app, user):
'amount': 41,
'total_amount': 42,
'remaining_amount': 41,
'created': datetime.date.today().isoformat(),
'created': now().date().isoformat(),
'display_id': 'F%02d-%s-0000001'
% (
regie.pk,
@ -1202,7 +1202,7 @@ def test_detail_invoice_for_payer(app, user):
'label': 'My invoice',
'online_payment': False,
'paid': False,
'pay_limit_date': datetime.date.today().isoformat(),
'pay_limit_date': now().date().isoformat(),
'due_date': invoice.date_due.isoformat(),
'payment_deadline_date': invoice.date_payment_deadline.isoformat(),
'disabled': False,
@ -1217,7 +1217,7 @@ def test_detail_invoice_for_payer(app, user):
'amount': 0,
'total_amount': 42,
'remaining_amount': 0,
'created': datetime.date.today().isoformat(),
'created': now().date().isoformat(),
'display_id': 'F%02d-%s-0000001'
% (
regie.pk,
@ -1290,7 +1290,7 @@ def test_pdf_invoice(mock_payer, app, user):
invoice = Invoice.objects.create(
label='My invoice',
date_publication=datetime.date(2022, 10, 1),
date_payment_deadline=datetime.date.today(),
date_payment_deadline=now().date(),
date_due=datetime.date(2022, 10, 31),
regie=regie,
payer_external_id='payer:1',
@ -1298,7 +1298,7 @@ def test_pdf_invoice(mock_payer, app, user):
invoice.set_number()
invoice.save()
InvoiceLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
invoice=invoice,
quantity=1,
unit_amount=42,
@ -1310,13 +1310,13 @@ def test_pdf_invoice(mock_payer, app, user):
assert resp.headers['Content-Disposition'] == 'attachment; filename="%s.pdf"' % invoice.formatted_number
# publication date is in the future
invoice.date_publication = datetime.date.today() + datetime.timedelta(days=1)
invoice.date_publication = now().date() + datetime.timedelta(days=1)
invoice.save()
app.get('/api/regie/foo/invoice/%s/pdf/' % str(invoice.uuid), params={'NameID': 'foobar'}, status=404)
# other regie
other_regie = Regie.objects.create(label='Other Foo')
invoice.date_publication = datetime.date.today()
invoice.date_publication = now().date()
invoice.regie = other_regie
invoice.save()
app.get('/api/regie/foo/invoice/%s/pdf/' % str(invoice.uuid), params={'NameID': 'foobar'}, status=404)
@ -1382,14 +1382,14 @@ def test_pdf_invoice_for_payer(app, user):
label='My invoice',
date_publication=datetime.date(2022, 10, 1),
date_payment_deadline=datetime.date(2022, 10, 31),
date_due=datetime.date.today(),
date_due=now().date(),
regie=regie,
payer_external_id='payer:1',
)
invoice.set_number()
invoice.save()
InvoiceLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
invoice=invoice,
quantity=1,
unit_amount=42,
@ -1402,7 +1402,7 @@ def test_pdf_invoice_for_payer(app, user):
assert resp.headers['Content-Disposition'] == 'attachment; filename="%s.pdf"' % invoice.formatted_number
# publication date is in the future
invoice.date_publication = datetime.date.today() + datetime.timedelta(days=1)
invoice.date_publication = now().date() + datetime.timedelta(days=1)
invoice.save()
app.get(
'/api/regie/foo/invoice/%s/pdf/' % str(invoice.uuid),
@ -1412,7 +1412,7 @@ def test_pdf_invoice_for_payer(app, user):
# other regie
other_regie = Regie.objects.create(label='Other Foo')
invoice.date_publication = datetime.date.today()
invoice.date_publication = now().date()
invoice.regie = other_regie
invoice.save()
app.get(
@ -1482,7 +1482,7 @@ def test_pdf_invoice_payments(mock_payer, app, user):
invoice = Invoice.objects.create(
label='My invoice',
date_publication=datetime.date(2022, 10, 1),
date_payment_deadline=datetime.date.today(),
date_payment_deadline=now().date(),
date_due=datetime.date(2022, 10, 31),
regie=regie,
payer_external_id='payer:1',
@ -1490,7 +1490,7 @@ def test_pdf_invoice_payments(mock_payer, app, user):
invoice.set_number()
invoice.save()
line = InvoiceLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
invoice=invoice,
quantity=1,
unit_amount=42,
@ -1516,7 +1516,7 @@ def test_pdf_invoice_payments(mock_payer, app, user):
assert resp.headers['Content-Disposition'] == 'attachment; filename="A-%s.pdf"' % invoice.formatted_number
# publication date is in the future
invoice.date_publication = datetime.date.today() + datetime.timedelta(days=1)
invoice.date_publication = now().date() + datetime.timedelta(days=1)
invoice.save()
app.get(
'/api/regie/foo/invoice/%s/payments/pdf/' % str(invoice.uuid), params={'NameID': 'foobar'}, status=404
@ -1524,7 +1524,7 @@ def test_pdf_invoice_payments(mock_payer, app, user):
# other regie
other_regie = Regie.objects.create(label='Other Foo')
invoice.date_publication = datetime.date.today()
invoice.date_publication = now().date()
invoice.regie = other_regie
invoice.save()
app.get(
@ -1577,7 +1577,7 @@ def test_pdf_invoice_payments(mock_payer, app, user):
# invoice has remaining_amount
line = InvoiceLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
invoice=invoice,
quantity=1,
unit_amount=42,
@ -1618,14 +1618,14 @@ def test_pdf_invoice_payments_for_payer(app, user):
label='My invoice',
date_publication=datetime.date(2022, 10, 1),
date_payment_deadline=datetime.date(2022, 10, 31),
date_due=datetime.date.today(),
date_due=now().date(),
regie=regie,
payer_external_id='payer:1',
)
invoice.set_number()
invoice.save()
line = InvoiceLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
invoice=invoice,
quantity=1,
unit_amount=42,
@ -1652,7 +1652,7 @@ def test_pdf_invoice_payments_for_payer(app, user):
assert resp.headers['Content-Disposition'] == 'attachment; filename="A-%s.pdf"' % invoice.formatted_number
# publication date is in the future
invoice.date_publication = datetime.date.today() + datetime.timedelta(days=1)
invoice.date_publication = now().date() + datetime.timedelta(days=1)
invoice.save()
app.get(
'/api/regie/foo/invoice/%s/payments/pdf/' % str(invoice.uuid),
@ -1662,7 +1662,7 @@ def test_pdf_invoice_payments_for_payer(app, user):
# other regie
other_regie = Regie.objects.create(label='Other Foo')
invoice.date_publication = datetime.date.today()
invoice.date_publication = now().date()
invoice.regie = other_regie
invoice.save()
app.get(
@ -1706,7 +1706,7 @@ def test_pdf_invoice_payments_for_payer(app, user):
# invoice has remaining_amount
line = InvoiceLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
invoice=invoice,
quantity=1,
unit_amount=42,
@ -1740,7 +1740,7 @@ def test_pay_invoice(app, user):
invoice = Invoice.objects.create(
label='My invoice',
date_publication=datetime.date(2022, 10, 1),
date_payment_deadline=datetime.date.today(),
date_payment_deadline=now().date(),
date_due=datetime.date(2022, 10, 31),
regie=regie,
payer_external_id='payer:1',
@ -1751,7 +1751,7 @@ def test_pay_invoice(app, user):
app.post('/api/regie/foo/invoice/%s/pay/' % str(uuid.uuid4()), status=404)
line = InvoiceLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
invoice=invoice,
quantity=1,
unit_amount=42,
@ -1781,7 +1781,7 @@ def test_pay_invoice(app, user):
assert payment.number == 1
assert payment.formatted_number == 'R%02d-%s-0000001' % (
regie.pk,
datetime.date.today().strftime('%y-%m'),
now().strftime('%y-%m'),
)
(invoice_line_payment,) = payment.invoicelinepayment_set.order_by('pk')
assert invoice_line_payment.amount == 42
@ -1816,7 +1816,7 @@ def test_pay_invoice(app, user):
assert payment.number == 2
assert payment.formatted_number == 'R%02d-%s-0000002' % (
regie.pk,
datetime.date.today().strftime('%y-%m'),
now().strftime('%y-%m'),
)
assert payment.payer_external_id == 'payer:1'
assert payment.payer_first_name == 'Foo'
@ -1848,7 +1848,7 @@ def test_pay_invoice(app, user):
assert payment.number == 3
assert payment.formatted_number == 'R%02d-%s-0000003' % (
regie.pk,
datetime.date.today().strftime('%y-%m'),
now().strftime('%y-%m'),
)
assert payment.payer_external_id == 'payer:1'
assert payment.payer_first_name == 'Foo'
@ -2154,7 +2154,7 @@ def test_close_draft_invoice(app, user):
assert resp.json['err'] == 0
assert Credit.objects.count() == 0
final_invoice = Invoice.objects.latest('pk')
today = datetime.date.today()
today = now().date()
assert resp.json['data'] == {'invoice_id': str(final_invoice.uuid)}
assert final_invoice.date_publication == invoice.date_publication
assert final_invoice.date_payment_deadline == invoice.date_payment_deadline

View File

@ -4,6 +4,7 @@ import uuid
from unittest import mock
import pytest
from django.utils.timezone import now
from lingo.invoicing.models import (
Invoice,
@ -77,19 +78,19 @@ def test_add_payment(app, user):
invoice11 = Invoice.objects.create(
date_publication=datetime.date(2022, 10, 1),
date_payment_deadline=datetime.date(2022, 10, 31),
date_due=datetime.date.today(),
date_due=now().date(),
regie=regie,
payer_external_id='payer:1',
)
line111 = InvoiceLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
invoice=invoice11,
quantity=1,
unit_amount=-2,
payer_external_id='payer:1',
)
line112 = InvoiceLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
invoice=invoice11,
quantity=1,
unit_amount=44,
@ -98,12 +99,12 @@ def test_add_payment(app, user):
invoice12 = Invoice.objects.create(
date_publication=datetime.date(2022, 10, 1),
date_payment_deadline=datetime.date(2022, 10, 31),
date_due=datetime.date.today(),
date_due=now().date(),
regie=regie,
payer_external_id='payer:1',
)
line12 = InvoiceLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
invoice=invoice12,
quantity=1,
unit_amount=42,
@ -112,12 +113,12 @@ def test_add_payment(app, user):
invoice13 = Invoice.objects.create(
date_publication=datetime.date(2022, 10, 1),
date_payment_deadline=datetime.date(2022, 10, 31),
date_due=datetime.date.today(),
date_due=now().date(),
regie=regie,
payer_external_id='payer:2',
)
line13 = InvoiceLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
invoice=invoice13,
quantity=1,
unit_amount=42,
@ -126,12 +127,12 @@ def test_add_payment(app, user):
invoice14 = Invoice.objects.create(
date_publication=datetime.date(2022, 10, 1),
date_payment_deadline=datetime.date(2022, 10, 31),
date_due=datetime.date.today() - datetime.timedelta(days=1), # past date
date_due=now().date() - datetime.timedelta(days=1), # past date
regie=regie,
payer_external_id='payer:1',
)
line14 = InvoiceLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
invoice=invoice14,
quantity=1,
unit_amount=42,
@ -145,7 +146,7 @@ def test_add_payment(app, user):
payer_external_id='payer:1',
)
InvoiceLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
invoice=invoice21,
quantity=1,
unit_amount=42,
@ -155,12 +156,12 @@ def test_add_payment(app, user):
other_invoice = Invoice.objects.create(
date_publication=datetime.date(2022, 10, 1),
date_payment_deadline=datetime.date(2022, 10, 31),
date_due=datetime.date.today(),
date_due=now().date(),
regie=other_regie,
payer_external_id='payer:1',
)
other_line = InvoiceLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
invoice=other_invoice,
quantity=1,
unit_amount=42,
@ -233,7 +234,7 @@ def test_add_payment(app, user):
assert payment.number == 1
assert payment.formatted_number == 'R%02d-%s-0000001' % (
regie.pk,
datetime.date.today().strftime('%y-%m'),
now().strftime('%y-%m'),
)
assert payment.payment_info == {
'check_number': '123456',
@ -276,7 +277,7 @@ def test_add_payment(app, user):
assert payment.number == 2
assert payment.formatted_number == 'R%02d-%s-0000002' % (
regie.pk,
datetime.date.today().strftime('%y-%m'),
now().strftime('%y-%m'),
)
assert payment.payment_info == {
'check_number': '123456',
@ -312,7 +313,7 @@ def test_add_payment(app, user):
assert payment.number == 3
assert payment.formatted_number == 'R%02d-%s-0000003' % (
regie.pk,
datetime.date.today().strftime('%y-%m'),
now().strftime('%y-%m'),
)
invoice_line_payment1, invoice_line_payment2 = payment.invoicelinepayment_set.order_by('pk')
assert invoice_line_payment1.amount == 22
@ -354,7 +355,7 @@ def test_add_payment(app, user):
assert payment.number == 4
assert payment.formatted_number == 'R%02d-%s-0000004' % (
regie.pk,
datetime.date.today().strftime('%y-%m'),
now().strftime('%y-%m'),
)
(invoice_line_payment,) = payment.invoicelinepayment_set.order_by('pk')
assert invoice_line_payment.amount == decimal.Decimal('41.99')
@ -425,7 +426,7 @@ def test_add_payment(app, user):
assert payment.number == 5
assert payment.formatted_number == 'R%02d-%s-0000005' % (
regie.pk,
datetime.date.today().strftime('%y-%m'),
now().strftime('%y-%m'),
)
(invoice_line_payment,) = payment.invoicelinepayment_set.order_by('pk')
assert invoice_line_payment.amount == 10
@ -457,7 +458,7 @@ def test_add_payment(app, user):
assert payment.number == 6
assert payment.formatted_number == 'R%02d-%s-0000006' % (
regie.pk,
datetime.date.today().strftime('%y-%m'),
now().strftime('%y-%m'),
)
(
invoice_line_payment1,
@ -494,7 +495,7 @@ def test_add_payment(app, user):
assert payment.number == 7
assert payment.formatted_number == 'R%02d-%s-0000007' % (
regie.pk,
datetime.date.today().strftime('%y-%m'),
now().strftime('%y-%m'),
)
invoice_line_payment1, invoice_line_payment2 = payment.invoicelinepayment_set.order_by('pk')
assert invoice_line_payment1.amount == 22
@ -542,7 +543,7 @@ def test_add_payment(app, user):
assert payment.number == 8
assert payment.formatted_number == 'R%02d-%s-0000008' % (
regie.pk,
datetime.date.today().strftime('%y-%m'),
now().strftime('%y-%m'),
)
(invoice_line_payment,) = payment.invoicelinepayment_set.order_by('pk')
assert invoice_line_payment.amount == decimal.Decimal('41.99')
@ -569,7 +570,7 @@ def test_list_payments(mock_payer, app, user):
invoice = Invoice.objects.create(
label='My invoice',
date_publication=datetime.date(2022, 10, 1),
date_payment_deadline=datetime.date.today(),
date_payment_deadline=now().date(),
date_due=datetime.date(2022, 10, 31),
regie=regie,
payer_external_id='payer:1',
@ -577,7 +578,7 @@ def test_list_payments(mock_payer, app, user):
invoice.set_number()
invoice.save()
line = InvoiceLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
invoice=invoice,
quantity=1,
unit_amount=42,
@ -610,7 +611,7 @@ def test_list_payments(mock_payer, app, user):
),
'payment_type': 'Cash',
'amount': 42,
'created': datetime.date.today().isoformat(),
'created': now().date().isoformat(),
'has_pdf': True,
}
]
@ -654,7 +655,7 @@ def test_list_payments_for_payer(app, user):
invoice = Invoice.objects.create(
label='My invoice',
date_publication=datetime.date(2022, 10, 1),
date_payment_deadline=datetime.date.today(),
date_payment_deadline=now().date(),
date_due=datetime.date(2022, 10, 31),
regie=regie,
payer_external_id='payer:1',
@ -662,7 +663,7 @@ def test_list_payments_for_payer(app, user):
invoice.set_number()
invoice.save()
line = InvoiceLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
invoice=invoice,
quantity=1,
unit_amount=42,
@ -694,7 +695,7 @@ def test_list_payments_for_payer(app, user):
),
'payment_type': 'Cash',
'amount': 42,
'created': datetime.date.today().isoformat(),
'created': now().date().isoformat(),
'has_pdf': True,
}
]
@ -727,7 +728,7 @@ def test_pdf_payment(mock_payer, app, user):
invoice = Invoice.objects.create(
label='My invoice',
date_publication=datetime.date(2022, 10, 1),
date_payment_deadline=datetime.date.today(),
date_payment_deadline=now().date(),
date_due=datetime.date(2022, 10, 31),
regie=regie,
payer_external_id='payer:1',
@ -735,7 +736,7 @@ def test_pdf_payment(mock_payer, app, user):
invoice.set_number()
invoice.save()
line = InvoiceLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
invoice=invoice,
quantity=1,
unit_amount=42,
@ -792,14 +793,14 @@ def test_pdf_payment_for_payer(app, user):
label='My invoice',
date_publication=datetime.date(2022, 10, 1),
date_payment_deadline=datetime.date(2022, 10, 31),
date_due=datetime.date.today(),
date_due=now().date(),
regie=regie,
payer_external_id='payer:1',
)
invoice.set_number()
invoice.save()
line = InvoiceLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
invoice=invoice,
quantity=1,
unit_amount=42,

View File

@ -75,7 +75,7 @@ def test_add_refund(app, user):
assert resp.json['err']
assert resp.json['errors'] == {'credit': ['Unknown credit.']}
other_credit = Credit.objects.create(
date_publication=datetime.date.today() + datetime.timedelta(days=1), # not published
date_publication=now().date() + datetime.timedelta(days=1), # not published
regie=regie,
payer_external_id='payer:1',
)
@ -154,7 +154,7 @@ def test_add_refund(app, user):
assert refund.number == 1
assert refund.formatted_number == 'V%02d-%s-0000001' % (
regie.pk,
datetime.date.today().strftime('%y-%m'),
now().strftime('%y-%m'),
)
assert refund.payer_external_id == 'payer:1'
assert refund.payer_first_name == 'First1'
@ -203,7 +203,7 @@ def test_add_refund(app, user):
assert refund.number == 2
assert refund.formatted_number == 'V%02d-%s-0000002' % (
regie.pk,
datetime.date.today().strftime('%y-%m'),
now().strftime('%y-%m'),
)
assert refund.payer_external_id == 'payer:1'
assert refund.payer_first_name == 'First1'

View File

@ -3,6 +3,7 @@ import decimal
import uuid
import pytest
from django.utils.timezone import now
from lingo.basket.models import Basket, BasketLine, BasketLineItem
from lingo.invoicing.models import DraftInvoice, Regie
@ -57,11 +58,11 @@ def test_add_basket(settings, app, user):
assert basket.expiry_at - basket.created_at > datetime.timedelta(minutes=59)
assert DraftInvoice.objects.count() == 1
invoice = DraftInvoice.objects.latest('pk')
assert invoice.label == 'Invoice from %s' % datetime.date.today().strftime('%d/%m/%Y')
assert invoice.label == 'Invoice from %s' % now().strftime('%d/%m/%Y')
assert invoice.total_amount == 0
assert invoice.date_publication == datetime.date.today()
assert invoice.date_payment_deadline == datetime.date.today() + datetime.timedelta(days=1)
assert invoice.date_due == datetime.date.today() + datetime.timedelta(days=1)
assert invoice.date_publication == now().date()
assert invoice.date_payment_deadline == now().date() + datetime.timedelta(days=1)
assert invoice.date_due == now().date() + datetime.timedelta(days=1)
assert invoice.date_debit is None
assert invoice.regie == regie
assert invoice.payer_external_id == 'payer:1'
@ -580,7 +581,7 @@ def test_close_line(app, user):
basket.refresh_from_db()
assert invoice.lines.count() == 6
line1, line2, line3, line4, line5, line6 = invoice.lines.all().order_by('pk')
assert line1.event_date == datetime.date.today()
assert line1.event_date == now().date()
assert line1.slug == 'mercredi-annulation-mer-1511'
assert line1.event_slug == 'agenda@mercredi'
assert line1.event_label == 'Mercredi'

View File

@ -26,7 +26,7 @@ def test_statistics_list(app, user):
Invoice.objects.create(
date_publication=datetime.date(2022, 10, 1),
date_payment_deadline=datetime.date.today(),
date_payment_deadline=now().date(),
date_due=datetime.date(2022, 10, 31),
payer_external_id='payer:1',
payer_first_name='First',
@ -80,7 +80,7 @@ def test_statistics_invoice(app, user):
for i in range(1, 4):
invoice = Invoice.objects.create(
date_publication=datetime.date(2022, 10, i),
date_payment_deadline=datetime.date.today(),
date_payment_deadline=now().date(),
date_due=datetime.date(2022, 10, 31),
regie=regie if i == 1 else regie2,
payer_external_id='payer:1' if i == 1 else 'payer:2',
@ -88,7 +88,7 @@ def test_statistics_invoice(app, user):
for j in range(1, 5):
line = InvoiceLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
invoice=invoice,
quantity=i,
unit_amount=j,
@ -141,7 +141,7 @@ def test_statistics_invoice(app, user):
# count measure
invoice = Invoice.objects.create(
date_publication=datetime.date(2022, 10, 2),
date_payment_deadline=datetime.date.today(),
date_payment_deadline=now().date(),
date_due=datetime.date(2022, 10, 31),
regie=regie,
)

View File

@ -552,7 +552,7 @@ def test_basket_validate_generate_invoice(app, simple_user):
unit_amount=1,
)
other_credit = Credit.objects.create(
date_publication=datetime.date.today() + datetime.timedelta(days=1), # not published
date_publication=now().date() + datetime.timedelta(days=1), # not published
regie=regie,
payer_external_id='payer:1',
)
@ -826,7 +826,7 @@ def test_basket_validate_generate_credit(app, simple_user):
assert basket.invoice is None
credit = Credit.objects.latest('pk')
assert basket.credit == credit
assert credit.label == 'Credit from %s' % datetime.date.today().strftime('%d/%m/%Y')
assert credit.label == 'Credit from %s' % now().strftime('%d/%m/%Y')
assert credit.total_amount == 1
assert credit.regie == regie
assert credit.payer_external_id == 'payer:1'

View File

@ -295,7 +295,7 @@ def test_basket_amounts_with_draft_invoice():
# not published credit
other_credit = Credit.objects.create(
date_publication=datetime.date.today() + datetime.timedelta(days=1),
date_publication=now().date() + datetime.timedelta(days=1),
regie=regie,
payer_external_id='payer:1',
)

View File

@ -343,7 +343,7 @@ def test_regie_payments(app, admin_user):
)
# test filters
today = datetime.date.today()
today = now().date()
params = [
({'number': payment1.formatted_number}, 1, 1),
({'number': payment1.created_at.strftime('%y-%m')}, 4, 5),

View File

@ -3615,7 +3615,7 @@ def test_generate_invoices_errors(mock_generate, mock_lines, mock_users, mock_ag
def test_promote_pool():
today = datetime.date.today()
today = now().date()
regie = Regie.objects.create(label='Regie')
campaign = Campaign.objects.create(
regie=regie,

View File

@ -5,6 +5,7 @@ import pytest
from django.db import IntegrityError, transaction
from django.template import Context
from django.test.client import RequestFactory
from django.utils.timezone import now
from publik_django_templatetags.wcs.context_processors import Cards
from lingo.invoicing.models import (
@ -64,7 +65,7 @@ def test_invoiceline_total_amount(draft, orphan):
# create line
line = line_model.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
quantity=0,
unit_amount=0,
pool=pool if not orphan else None,
@ -73,7 +74,7 @@ def test_invoiceline_total_amount(draft, orphan):
assert line.total_amount == 0
line = line_model.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
quantity=2,
unit_amount=5,
pool=pool if not orphan else None,
@ -135,7 +136,7 @@ def test_invoice_total_amount(draft, orphan):
assert invoice2.total_amount == 0
line = line_model.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
invoice=invoice, # with invoice
quantity=0,
unit_amount=0,
@ -172,7 +173,7 @@ def test_invoice_total_amount(draft, orphan):
# create line with invoice
line2 = line_model.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
invoice=invoice,
quantity=1,
unit_amount=20,
@ -200,7 +201,7 @@ def test_invoice_total_amount(draft, orphan):
# create line without invoice
line3 = line_model.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
quantity=1,
unit_amount=20,
pool=pool if not orphan else None,
@ -267,7 +268,7 @@ def test_invoice_payments(orphan):
pool=pool if not orphan else None,
)
line1 = InvoiceLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
invoice=invoice1,
quantity=1,
unit_amount=42,
@ -281,14 +282,14 @@ def test_invoice_payments(orphan):
pool=pool if not orphan else None,
)
line2 = InvoiceLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
invoice=invoice2,
quantity=1,
unit_amount=35,
pool=pool if not orphan else None,
)
line3 = InvoiceLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
invoice=invoice2,
quantity=1,
unit_amount=-10,
@ -535,7 +536,7 @@ def test_creditline_total_amount():
# create line
line = CreditLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
quantity=0,
unit_amount=0,
credit=credit,
@ -544,7 +545,7 @@ def test_creditline_total_amount():
assert line.total_amount == 0
line = CreditLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
quantity=2,
unit_amount=5,
credit=credit,
@ -581,7 +582,7 @@ def test_credit_total_amount():
assert credit2.total_amount == 0
line = CreditLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
credit=credit,
quantity=0,
unit_amount=0,
@ -617,7 +618,7 @@ def test_credit_total_amount():
# create line
line2 = CreditLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
credit=credit,
quantity=1,
unit_amount=20,
@ -644,7 +645,7 @@ def test_credit_total_amount():
# create line
line3 = CreditLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
credit=credit,
quantity=1,
unit_amount=20,
@ -678,7 +679,7 @@ def test_credit_assignments():
regie=regie,
)
CreditLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
credit=credit1,
quantity=1,
unit_amount=42,
@ -688,13 +689,13 @@ def test_credit_assignments():
regie=regie,
)
line2 = CreditLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
credit=credit2,
quantity=1,
unit_amount=35,
)
CreditLine.objects.create(
event_date=datetime.date.today(),
event_date=now().date(),
credit=credit2,
quantity=1,
unit_amount=-10,