manager: fix views with year < 1000 (#78231)
gitea/chrono/pipeline/head This commit looks good Details

This commit is contained in:
Lauréline Guérin 2023-06-19 10:03:08 +02:00 committed by Lauréline Guérin
parent f9ae449f7c
commit cb9944050e
3 changed files with 14 additions and 8 deletions

View File

@ -69,22 +69,22 @@ urlpatterns = [
path('resource/add/', views.resource_add, name='chrono-manager-resource-add'),
path('resource/<int:pk>/', views.resource_view, name='chrono-manager-resource-view'),
re_path(
r'^resource/(?P<pk>\d+)/month/(?P<year>[0-9]{4})/(?P<month>[0-9]+)/(?P<day>[0-9]+)/$',
r'^resource/(?P<pk>\d+)/month/(?P<year>[1-9][0-9]{3})/(?P<month>[0-9]+)/(?P<day>[0-9]+)/$',
views.resource_monthly_view,
name='chrono-manager-resource-month-view',
),
re_path(
r'^resource/(?P<pk>\d+)/week/(?P<year>[0-9]{4})/(?P<month>[0-9]+)/(?P<day>[0-9]+)/$',
r'^resource/(?P<pk>\d+)/week/(?P<year>[1-9][0-9]{3})/(?P<month>[0-9]+)/(?P<day>[0-9]+)/$',
views.resource_weekly_view,
name='chrono-manager-resource-week-view',
),
re_path(
r'^resource/(?P<pk>\d+)/day/(?P<year>[0-9]{4})/(?P<month>[0-9]+)/(?P<day>[0-9]+)/$',
r'^resource/(?P<pk>\d+)/day/(?P<year>[1-9][0-9]{3})/(?P<month>[0-9]+)/(?P<day>[0-9]+)/$',
views.resource_day_view,
name='chrono-manager-resource-day-view',
),
re_path(
r'^resource/(?P<pk>\d+)/(?P<year>[0-9]{4})/',
r'^resource/(?P<pk>\d+)/(?P<year>[1-9][0-9]{3})/',
views.resource_redirect_view,
name='chrono-manager-resource-redirect-view',
),
@ -113,7 +113,7 @@ urlpatterns = [
name='chrono-manager-agenda-month-redirect-view',
),
re_path(
r'^agendas/(?P<pk>\d+)/month/(?P<year>[0-9]{4})/(?P<month>[0-9]+)/(?P<day>[0-9]+)/$',
r'^agendas/(?P<pk>\d+)/month/(?P<year>[1-9][0-9]{3})/(?P<month>[0-9]+)/(?P<day>[0-9]+)/$',
views.agenda_monthly_view,
name='chrono-manager-agenda-month-view',
),
@ -123,7 +123,7 @@ urlpatterns = [
name='chrono-manager-agenda-week-redirect-view',
),
re_path(
r'^agendas/(?P<pk>\d+)/week/(?P<year>[0-9]{4})/(?P<month>[0-9]+)/(?P<day>[0-9]+)/$',
r'^agendas/(?P<pk>\d+)/week/(?P<year>[1-9][0-9]{3})/(?P<month>[0-9]+)/(?P<day>[0-9]+)/$',
views.agenda_weekly_view,
name='chrono-manager-agenda-week-view',
),
@ -133,12 +133,12 @@ urlpatterns = [
name='chrono-manager-agenda-day-redirect-view',
),
re_path(
r'^agendas/(?P<pk>\d+)/day/(?P<year>[0-9]{4})/(?P<month>[0-9]+)/(?P<day>[0-9]+)/$',
r'^agendas/(?P<pk>\d+)/day/(?P<year>[1-9][0-9]{3})/(?P<month>[0-9]+)/(?P<day>[0-9]+)/$',
views.agenda_day_view,
name='chrono-manager-agenda-day-view',
),
re_path(
r'^agendas/(?P<pk>\d+)/(?P<year>[0-9]{4})/',
r'^agendas/(?P<pk>\d+)/(?P<year>[1-9][0-9]{3})/',
views.agenda_redirect_view,
name='chrono-manager-agenda-redirect-view',
),

View File

@ -928,6 +928,7 @@ def test_agenda_day_view(app, admin_user, manager_user, api_user):
login(app)
app.get('/manage/agendas/%s/day/%d/%d/%d/' % (agenda.pk, today.year, 42, today.day), status=404)
app.get('/manage/agendas/%s/day/%s/%d/%d/' % (agenda.pk, '0999', today.month, today.day), status=404)
resp = app.get('/manage/agendas/%s/day/%s/%s/%s/' % (agenda.pk, today.year, today.month, today.day))
assert 'No opening hours this day.' in resp.text # no time pediod
@ -1607,6 +1608,7 @@ def test_agenda_month_view(app, admin_user, manager_user, api_user):
)
timeperiod.save()
app.get('/manage/agendas/%s/month/%s/%s/%s/' % (agenda.pk, today.year, 42, today.day), status=404)
app.get('/manage/agendas/%s/month/%s/%d/%d/' % (agenda.pk, '0999', today.month, today.day), status=404)
resp = app.get('/manage/agendas/%s/month/%s/%s/%s/' % (agenda.pk, today.year, today.month, today.day))
assert 'No opening hours this month.' not in resp.text
assert '<div class="booking' not in resp.text
@ -2015,6 +2017,7 @@ def test_agenda_week_view(app, admin_user, manager_user, api_user):
)
timeperiod.save()
app.get('/manage/agendas/%s/week/%s/%s/%s/' % (agenda.id, today.year, 72, today.day), status=404)
app.get('/manage/agendas/%s/week/%s/%d/%d/' % (agenda.pk, '0999', today.month, today.day), status=404)
resp = app.get('/manage/agendas/%s/week/%s/%s/%s/' % (agenda.id, today.year, today.month, today.day))
assert 'No opening hours this week.' not in resp.text
assert '<div class="booking' not in resp.text

View File

@ -92,6 +92,7 @@ def test_resource_day_view(app, admin_user):
login(app)
app.get('/manage/resource/%s/day/%d/%d/%d/' % (resource.pk, today.year, 42, today.day), status=404)
app.get('/manage/resource/%s/day/%s/%d/%d/' % (resource.pk, '0999', today.month, today.day), status=404)
resp = app.get('/manage/resource/%s/day/%d/%d/%d/' % (resource.pk, today.year, today.month, today.day))
assert 'div class="booking' not in resp.text
assert 'No bookings this day.' in resp.text
@ -252,6 +253,7 @@ def test_resource_week_view(app, admin_user):
login(app)
today = datetime.date(2018, 11, 10) # fixed day
app.get('/manage/resource/%s/week/%s/%s/%s/' % (resource.pk, today.year, 72, today.day), status=404)
app.get('/manage/resource/%s/week/%s/%d/%d/' % (resource.pk, '0999', today.month, today.day), status=404)
resp = app.get('/manage/resource/%s/week/%s/%s/%s/' % (resource.pk, today.year, today.month, today.day))
assert '<div class="booking' not in resp.text
assert resp.text.count('<tr') == 9
@ -593,6 +595,7 @@ def test_resource_month_view(app, admin_user):
login(app)
today = datetime.date(2018, 11, 10) # fixed day
app.get('/manage/resource/%s/month/%s/%s/%s/' % (resource.pk, today.year, 42, today.day), status=404)
app.get('/manage/resource/%s/month/%s/%d/%d/' % (resource.pk, '0999', today.month, today.day), status=404)
resp = app.get('/manage/resource/%s/month/%s/%s/%s/' % (resource.pk, today.year, today.month, today.day))
assert '<div class="booking' not in resp.text
first_month_day = today.replace(day=1)