From 7ccb6682cf1e9b37bffc90f5090c1bc929c45f48 Mon Sep 17 00:00:00 2001 From: Raphael Michel Date: Mon, 8 Sep 2025 09:56:22 +0200 Subject: [PATCH] Fix a source of test flakiness --- src/tests/control/test_search.py | 174 +++++++++++++++---------------- 1 file changed, 87 insertions(+), 87 deletions(-) diff --git a/src/tests/control/test_search.py b/src/tests/control/test_search.py index 9bcc33a99c..b2d8987639 100644 --- a/src/tests/control/test_search.py +++ b/src/tests/control/test_search.py @@ -49,7 +49,7 @@ class OrderSearchTest(SoupTest): ) o1 = Order.objects.create( - code='FO1A', event=self.event1, email='dummy1@dummy.test', + code='ABCFO1A', event=self.event1, email='dummy1@dummy.test', status=Order.STATUS_PENDING, datetime=now(), expires=now() + datetime.timedelta(days=10), total=14, locale='en', @@ -69,7 +69,7 @@ class OrderSearchTest(SoupTest): ) o2 = Order.objects.create( - code='FO2', event=self.event2, email='dummy2@dummy.test', + code='DEFFO2', event=self.event2, email='dummy2@dummy.test', status=Order.STATUS_PENDING, datetime=now(), expires=now() + datetime.timedelta(days=10), total=14, locale='en', @@ -94,36 +94,36 @@ class OrderSearchTest(SoupTest): def test_team_limit_event(self): resp = self.client.get('/control/search/orders/').content.decode() - assert 'FO1' in resp - assert 'FO2' not in resp + assert 'ABCFO1' in resp + assert 'DEFFO2' not in resp def test_team_limit_event_wrong_permission(self): self.team.can_view_orders = False self.team.save() resp = self.client.get('/control/search/orders/').content.decode() - assert 'FO1' not in resp - assert 'FO2' not in resp + assert 'ABCFO1' not in resp + assert 'DEFFO2' not in resp def test_team_all_events(self): self.team.all_events = True self.team.save() resp = self.client.get('/control/search/orders/').content.decode() - assert 'FO1' in resp - assert 'FO2' in resp + assert 'ABCFO1' in resp + assert 'DEFFO2' in resp def test_team_all_events_wrong_permission(self): self.team.all_events = True self.team.can_view_orders = False self.team.save() resp = self.client.get('/control/search/orders/').content.decode() - assert 'FO1' not in resp - assert 'FO2' not in resp + assert 'ABCFO1' not in resp + assert 'DEFFO2' not in resp def test_team_none(self): self.team.members.clear() resp = self.client.get('/control/search/orders/').content.decode() - assert 'FO1' not in resp - assert 'FO2' not in resp + assert 'ABCFO1' not in resp + assert 'DEFFO2' not in resp def test_superuser(self): self.user.is_staff = True @@ -131,46 +131,46 @@ class OrderSearchTest(SoupTest): self.user.save() self.team.members.clear() resp = self.client.get('/control/search/orders/').content.decode() - assert 'FO1' in resp - assert 'FO2' in resp + assert 'ABCFO1' in resp + assert 'DEFFO2' in resp def test_filter_email(self): resp = self.client.get('/control/search/orders/?query=dummy1@dummy').content.decode() - assert 'FO1' in resp + assert 'ABCFO1' in resp resp = self.client.get('/control/search/orders/?query=dummynope').content.decode() - assert 'FO1' not in resp + assert 'ABCFO1' not in resp def test_filter_attendee_name(self): resp = self.client.get('/control/search/orders/?query=Pete').content.decode() - assert 'FO1' in resp + assert 'ABCFO1' in resp resp = self.client.get('/control/search/orders/?query=Mark').content.decode() - assert 'FO1' not in resp + assert 'ABCFO1' not in resp def test_filter_attendee_email(self): resp = self.client.get('/control/search/orders/?query=att.com').content.decode() - assert 'FO1' in resp + assert 'ABCFO1' in resp resp = self.client.get('/control/search/orders/?query=nope.com').content.decode() - assert 'FO1' not in resp + assert 'ABCFO1' not in resp def test_filter_invoice_address(self): resp = self.client.get('/control/search/orders/?query=Ltd').content.decode() - assert 'FO1' in resp + assert 'ABCFO1' in resp resp = self.client.get('/control/search/orders/?query=Miller').content.decode() - assert 'FO1' in resp + assert 'ABCFO1' in resp def test_filter_code(self): - resp = self.client.get('/control/search/orders/?query=FO1').content.decode() - assert '30C3-FO1' in resp - resp = self.client.get('/control/search/orders/?query=30c3-FO1').content.decode() - assert '30C3-FO1' in resp - resp = self.client.get('/control/search/orders/?query=30C3-fO1A').content.decode() - assert '30C3-FO1' in resp - resp = self.client.get('/control/search/orders/?query=30C3-fo14').content.decode() - assert '30C3-FO1' in resp - resp = self.client.get('/control/search/orders/?query=31c3-FO1').content.decode() - assert '30C3-FO1' not in resp - resp = self.client.get('/control/search/orders/?query=FO2').content.decode() - assert '30C3-FO1' not in resp + resp = self.client.get('/control/search/orders/?query=ABCFO').content.decode() + assert '30C3-ABCFO1' in resp + resp = self.client.get('/control/search/orders/?query=30c3-ABCFO1').content.decode() + assert '30C3-ABCFO1' in resp + resp = self.client.get('/control/search/orders/?query=30C3-abcfO1').content.decode() + assert '30C3-ABCFO1' in resp + resp = self.client.get('/control/search/orders/?query=30C3-4bcfo1').content.decode() + assert '30C3-ABCFO1' in resp + resp = self.client.get('/control/search/orders/?query=31c3-ABCFO1').content.decode() + assert '30C3-ABCFO1' not in resp + resp = self.client.get('/control/search/orders/?query=DEFFO2').content.decode() + assert '30C3-ABCFO1' not in resp class PaymentSearchTest(SoupTest): @@ -191,7 +191,7 @@ class PaymentSearchTest(SoupTest): ) o1 = Order.objects.create( - code='FO1A', event=self.event1, email='dummy1@dummy.test', + code='ABCFO1A', event=self.event1, email='dummy1@dummy.test', status=Order.STATUS_PENDING, datetime=now(), expires=now() + datetime.timedelta(days=10), total=14, locale='en', @@ -246,7 +246,7 @@ class PaymentSearchTest(SoupTest): ) o2 = Order.objects.create( - code='FO2', event=self.event2, email='dummy2@dummy.test', + code='DEFFO2', event=self.event2, email='dummy2@dummy.test', status=Order.STATUS_PENDING, datetime=now(), expires=now() + datetime.timedelta(days=10), total=15, locale='en', @@ -279,36 +279,36 @@ class PaymentSearchTest(SoupTest): def test_team_limit_event(self): resp = self.client.get('/control/search/payments/').content.decode() - assert 'FO1' in resp - assert 'FO2' not in resp + assert 'ABCFO1' in resp + assert 'DEFFO2' not in resp def test_team_limit_event_wrong_permission(self): self.team.can_view_orders = False self.team.save() resp = self.client.get('/control/search/payments/').content.decode() - assert 'FO1' not in resp - assert 'FO2' not in resp + assert 'ABCFO1' not in resp + assert 'DEFFO2' not in resp def test_team_all_events(self): self.team.all_events = True self.team.save() resp = self.client.get('/control/search/payments/').content.decode() - assert 'FO1' in resp - assert 'FO2' in resp + assert 'ABCFO1' in resp + assert 'DEFFO2' in resp def test_team_all_events_wrong_permission(self): self.team.all_events = True self.team.can_view_orders = False self.team.save() resp = self.client.get('/control/search/payments/').content.decode() - assert 'FO1' not in resp - assert 'FO2' not in resp + assert 'ABCFO1' not in resp + assert 'DEFFO2' not in resp def test_team_none(self): self.team.members.clear() resp = self.client.get('/control/search/payments/').content.decode() - assert 'FO1' not in resp - assert 'FO2' not in resp + assert 'ABCFO1' not in resp + assert 'DEFFO2' not in resp def test_superuser(self): self.user.is_staff = True @@ -316,60 +316,60 @@ class PaymentSearchTest(SoupTest): self.user.save() self.team.members.clear() resp = self.client.get('/control/search/payments/').content.decode() - assert 'FO1' in resp - assert 'FO2' in resp + assert 'ABCFO1' in resp + assert 'DEFFO2' in resp def test_filter_email(self): resp = self.client.get('/control/search/payments/?query=dummy1@dummy').content.decode() - assert 'FO1' in resp + assert 'ABCFO1' in resp resp = self.client.get('/control/search/payments/?query=dummynope').content.decode() - assert 'FO1' not in resp + assert 'ABCFO1' not in resp def test_filter_invoice_name(self): resp = self.client.get('/control/search/payments/?query=Pete').content.decode() - assert 'FO1' in resp + assert 'ABCFO1' in resp resp = self.client.get('/control/search/payments/?query=Mark').content.decode() - assert 'FO1' not in resp + assert 'ABCFO1' not in resp def test_filter_invoice_address(self): resp = self.client.get('/control/search/payments/?query=Ltd').content.decode() - assert 'FO1' in resp + assert 'ABCFO1' in resp resp = self.client.get('/control/search/payments/?query=Miller').content.decode() - assert 'FO1' in resp + assert 'ABCFO1' in resp resp = self.client.get('/control/search/payments/?query=Mark').content.decode() - assert 'FO1' not in resp + assert 'ABCFO1' not in resp def test_filter_code(self): - resp = self.client.get('/control/search/payments/?query=FO1').content.decode() - assert '30C3-FO1' in resp - resp = self.client.get('/control/search/payments/?query=30c3-FO1').content.decode() - assert '30C3-FO1' in resp - resp = self.client.get('/control/search/payments/?query=30C3-fO1A').content.decode() - assert '30C3-FO1' in resp - resp = self.client.get('/control/search/payments/?query=30C3-fo14').content.decode() - assert '30C3-FO1' in resp - resp = self.client.get('/control/search/payments/?query=31c3-FO1').content.decode() - assert '30C3-FO1' not in resp - resp = self.client.get('/control/search/payments/?query=FO2').content.decode() - assert '30C3-FO1' not in resp + resp = self.client.get('/control/search/payments/?query=ABCFO1').content.decode() + assert '30C3-ABCFO1' in resp + resp = self.client.get('/control/search/payments/?query=30c3-ABCFO1').content.decode() + assert '30C3-ABCFO1' in resp + resp = self.client.get('/control/search/payments/?query=30C3-abcfO1').content.decode() + assert '30C3-ABCFO1' in resp + resp = self.client.get('/control/search/payments/?query=30C3-4bcfo1').content.decode() + assert '30C3-ABCFO1' in resp + resp = self.client.get('/control/search/payments/?query=31c3-ABCFO1').content.decode() + assert '30C3-ABCFO1' not in resp + resp = self.client.get('/control/search/payments/?query=DEFFO2').content.decode() + assert '30C3-ABCFO1' not in resp def test_filter_amount(self): self.team.all_events = True self.team.save() resp = self.client.get('/control/search/payments/?amount=14').content.decode() - assert 'FO1' in resp - assert 'FO2' not in resp + assert 'ABCFO1' in resp + assert 'DEFFO2' not in resp resp = self.client.get('/control/search/payments/?amount=15.00').content.decode() - assert 'FO1' not in resp - assert 'FO2' in resp + assert 'ABCFO1' not in resp + assert 'DEFFO2' in resp def test_filter_event(self): self.team.all_events = True self.team.save() event_id = str(self.event1.pk) resp = self.client.get('/control/search/payments/?event=' + event_id).content.decode() - assert "FO1" in resp - assert "FO2" not in resp + assert "ABCFO1" in resp + assert "DEFFO2" not in resp def test_filter_organizer(self): self.team2.members.add(self.user) @@ -377,11 +377,11 @@ class PaymentSearchTest(SoupTest): b = str(self.orga1.pk) resp = self.client.get('/control/search/payments/?organizer=' + b).content.decode() - assert "FO1" in resp + assert "ABCFO1" in resp b = str(self.orga2.pk) resp = self.client.get('/control/search/payments/?organizer=' + b).content.decode() - assert "FO1" not in resp + assert "ABCFO1" not in resp def test_filter_state(self): self.user.is_staff = True @@ -390,18 +390,18 @@ class PaymentSearchTest(SoupTest): confirmed = OrderPayment.PAYMENT_STATE_CONFIRMED resp = self.client.get('/control/search/payments/?state=' + confirmed).content.decode() - assert "FO1A-P-1" in resp - assert "FO1A-P-2" not in resp - assert "FO1A-P-3" not in resp - assert "FO1A-P-4" not in resp - assert "FO1A-P-5" not in resp - assert "FO1A-P-6" not in resp + assert "ABCFO1A-P-1" in resp + assert "ABCFO1A-P-2" not in resp + assert "ABCFO1A-P-3" not in resp + assert "ABCFO1A-P-4" not in resp + assert "ABCFO1A-P-5" not in resp + assert "ABCFO1A-P-6" not in resp def test_filter_provider(self): resp = self.client.get('/control/search/payments/?provider=giftcard').content.decode() - assert "FO1A-P-1" in resp - assert "FO1A-P-2" not in resp - assert "FO1A-P-3" not in resp - assert "FO1A-P-4" not in resp - assert "FO1A-P-5" not in resp - assert "FO1A-P-6" not in resp + assert "ABCFO1A-P-1" in resp + assert "ABCFO1A-P-2" not in resp + assert "ABCFO1A-P-3" not in resp + assert "ABCFO1A-P-4" not in resp + assert "ABCFO1A-P-5" not in resp + assert "ABCFO1A-P-6" not in resp