diff --git a/lacommunaute/event/tests/__snapshots__/tests_views.ambr b/lacommunaute/event/tests/__snapshots__/tests_views.ambr new file mode 100644 index 000000000..43d3afa68 --- /dev/null +++ b/lacommunaute/event/tests/__snapshots__/tests_views.ambr @@ -0,0 +1,56 @@ +# serializer version: 1 +# name: TestEventMonthArchiveView.test_action_box[False-anonymous][anonymous] + ''' +
+
+ +
+
+
+
+
+ Je suis l'organisateur d'un évènement à destination des CIP pour les aider à améliorer leur pratique professionnelle ? +
+ Je me connecte pour ajouter un évènement public dans le calendrier de la communauté +
+ +
+
+
+
+ +
+
+ ''' +# --- +# name: TestEventMonthArchiveView.test_action_box[True-authenticated][authenticated] + ''' +
+
+ +
+
+
+
+
+ Je suis l'organisateur d'un évènement à destination des CIP pour les aider à améliorer leur pratique professionnelle ? +
+ J'ajoute un évènement public dans le calendrier de la communauté +
+ +
+
+
+
+ +
+
+ ''' +# --- diff --git a/lacommunaute/event/tests/tests_views.py b/lacommunaute/event/tests/tests_views.py index b1b209e9b..fcc92a38f 100644 --- a/lacommunaute/event/tests/tests_views.py +++ b/lacommunaute/event/tests/tests_views.py @@ -1,5 +1,6 @@ from datetime import datetime, timedelta +import pytest from dateutil.relativedelta import relativedelta from django.conf import settings from django.test import TestCase @@ -12,6 +13,7 @@ from lacommunaute.event.forms import EventModelForm from lacommunaute.event.models import Event from lacommunaute.users.factories import UserFactory +from lacommunaute.utils.testing import parse_response_to_soup faker = Faker() @@ -75,7 +77,7 @@ def setUpTestData(cls): def test_login_is_required(self): response = self.client.get(self.url) self.assertEqual(response.status_code, 302) - self.assertEqual(response.url, reverse("openid_connect:authorize") + "?next=" + self.url) + self.assertEqual(response.url, reverse("users:login") + "?next=" + self.url) def test_event_is_created(self): self.client.force_login(self.user) @@ -191,7 +193,7 @@ def setUpTestData(cls): def test_login_is_required(self): response = self.client.get(self.url) self.assertEqual(response.status_code, 302) - self.assertEqual(response.url, reverse("openid_connect:authorize") + "?next=" + self.url) + self.assertEqual(response.url, reverse("users:login") + "?next=" + self.url) self.client.force_login(self.user) response = self.client.get(self.url) @@ -221,7 +223,6 @@ def test_view_wo_args(self): response = self.client.get(reverse("event:current")) self.assertContains(response, event.name, status_code=200) self.assertContains(response, reverse("event:detail", kwargs={"pk": event.pk})) - self.assertContains(response, reverse("event:create")) def test_view_with_args(self): event = EventFactory(date=timezone.now()) @@ -272,3 +273,19 @@ def test_navbar(self): ), status_code=200, ) + + +class TestEventMonthArchiveView: + @pytest.mark.parametrize( + "authenticated,snapshot_name", + [ + (False, "anonymous"), + (True, "authenticated"), + ], + ) + def test_action_box(self, client, db, authenticated, snapshot_name, snapshot): + if authenticated: + client.force_login(UserFactory()) + response = client.get(reverse("event:current")) + content = parse_response_to_soup(response, selector="#action-box") + assert str(content) == snapshot(name=snapshot_name) diff --git a/lacommunaute/templates/event/event_archive_month.html b/lacommunaute/templates/event/event_archive_month.html index 1a276b99f..d15490ade 100644 --- a/lacommunaute/templates/event/event_archive_month.html +++ b/lacommunaute/templates/event/event_archive_month.html @@ -7,6 +7,7 @@ {% trans "Events" %} {{ month }} {% endblock sub_title %} {% block content %} + {% url 'event:create' as create_url %}
@@ -55,13 +56,41 @@

-
+
-
-
- {% trans "Post a new Public Event" %} + {% if user.is_authenticated %} +
+
+
+
+
+ Je suis l'organisateur d'un évènement à destination des CIP pour les aider à améliorer leur pratique professionnelle ? +
+ J'ajoute un évènement public dans le calendrier de la communauté +
+ +
+
+
-
+ {% else %} +
+
+
+
+
+ Je suis l'organisateur d'un évènement à destination des CIP pour les aider à améliorer leur pratique professionnelle ? +
+ Je me connecte pour ajouter un évènement public dans le calendrier de la communauté +
+
{% include "registration/includes/login_link.html" with next=create_url %}
+
+
+
+
+ {% endif %}
{% endblock content %}