8000 chore: Django 5.2-compatible test fixtures (#8008) · django-cms/django-cms@4e1fb8d · GitHub
[go: up one dir, main page]

Skip to content

Commit 4e1fb8d

Browse files
fsbraunGithub Release Action
andauthored
chore: Django 5.2-compatible test fixtures (#8008)
* chore: Re-hook fixture loading to stay compatible with django 5.2 * Remove Postgres pin to v12 for testing * Exclude Py39 from dj51 * Pin postgres to version 15 * Switch from psycopg2 to recommended psycopg>=3.1.8 --------- Co-authored-by: Github Release Action <info@django-cms.org>
1 parent a56decf commit 4e1fb8d

File tree

6 files changed

+64
-30
lines changed

6 files changed

+64
-30
lines changed

.github/workflows/test.yml

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,17 +16,20 @@ jobs:
1616
requirements-file: [
1717
django-4.2.txt,
1818
django-5.0.txt,
19+
django-5.1.txt,
1920
]
2021
os: [
2122
ubuntu-20.04,
2223
]
2324
exclude:
2425
- requirements-file: django-5.0.txt
2526
python-version: 3.9
27+
- requirements-file: django-5.1.txt
28+
python-version: 3.9
2629

2730
services:
2831
postgres:
29-
image: postgres:12
32+
image: postgres:15
3033
env:
3134
POSTGRES_USER: postgres
3235
POSTGRES_PASSWORD: postgres
@@ -69,13 +72,16 @@ jobs:
6972
requirements-file: [
7073
django-4.2.txt,
7174
django-5.0.txt,
75+
django-5.1.txt,
7276
]
7377
os: [
7478
ubuntu-20.04,
7579
]
7680
exclude:
7781
- requirements-file: django-5.0.txt
7882
python-version: 3.9
83+
- requirements-file: django-5.1.txt
84+
python-version: 3.9
7985

8086
services:
8187
mysql:
@@ -121,13 +127,16 @@ jobs:
121127
requirements-file: [
122128
django-4.2.txt,
123129
django-5.0.txt,
130+
django-5.1.txt,
124131
]
125132
os: [
126133
ubuntu-20.04,
127134
]
128135
exclude:
129136
- requirements-file: django-5.0.txt
130137
python-version: 3.9
138+
- requirements-file: django-5.1.txt
139+
python-version: 3.9
131140

132141
steps:
133142
- uses: actions A3E2 /checkout@v4
@@ -196,7 +205,7 @@ jobs:
196205

197206
services:
198207
postgres:
199-
image: postgres:13
208+
image: postgres:15
200209
env:
201210
POSTGRES_USER: postgres
202211
POSTGRES_PASSWORD: postgres

cms/test_utils/testcases.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -91,8 +91,8 @@ def showWarning(message, category, filename, lineno, file=None, line=None):
9191
class BaseCMSTestCase:
9292
counter = 1
9393

94-
def _fixture_setup(self):
95-
super()._fixture_setup()
94+
def _pre_setup(self):
95+
super()._pre_setup()
9696
self.create_fixtures()
9797
activate("en")
9898

cms/tests/test_page_admin.py

Lines changed: 47 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1609,6 +1609,29 @@ def test_add_page_no_redirect(self):
16091609
self.assertEqual(Page.objects.all().count(), 2)
16101610

16111611
class PermissionsTestCase(PageTestBase):
1612+
def assertContainsPermissions(self, response):
1613+
try:
1614+
# Django >= 5.1
1615+
self.assertContains(
1616+
response,
1617+
'<h2 id="pagepermission_set-2-heading" class="inline-heading">Page permissions</h2>',
1618+
html=True,
1619+
)
1620+
except AssertionError:
1621+
# Django < 5.1
1622+
self.assertContains(response, '<h2>Page permissions</h2>', html=True)
1623+
1624+
def assertNotContainsPermissions(self, response):
1625+
try:
1626+
# Django >= 5.1
1627+
self.assertNotContains(
1628+
response,
1629+
'<h2 id="pagepermission_set-1-heading" class="inline-heading">Page permissions</h2>',
1630+
html=True,
1631+
)
1632+
except AssertionError:
1633+
# Django < 5.1
1634+
self.assertNotContains(response, '<h2>Page permissions</h2>', html=True)
16121635

16131636
def _add_translation_to_page(self, page):
16141637
translation = create_page_content(
@@ -2186,7 +2209,7 @@ def test_user_can_add_page_permissions(self):
21862209

21872210
with self.login_user_context(staff_user):
21882211
response = self.client.get(endpoint)
2189-
self.assertContains(response, '<h2>Page permissions</h2>', html=True)
2212+
self.assertContainsPermissions(response)
21902213
response = self.client.post(endpoint, data)
21912214
self.assertEqual(response.status_code, 302)
21922215
self.assertRedirects(response, endpoint)
@@ -2223,7 +224 10000 6,7 @@ def test_user_cant_add_page_permissions(self):
22232246

22242247
with self.login_user_context(staff_user):
22252248
response = self.client.get(endpoint)
2226-
self.assertNotContains(response, '<h2>Page permissions</h2>', html=True)
2249+
self.assertNotContainsPermissions(response)
22272250
self.client.post(endpoint, data)
22282251
self.assertFalse(self._page_permission_exists(user=staff_user_2))
22292252

@@ -2265,7 +2288,7 @@ def test_user_can_edit_page_permissions(self):
22652288

22662289
with self.login_user_context(staff_user):
22672290
response = self.client.get(endpoint)
2268-
self.assertContains(response, '<h2>Page permissions</h2>', html=True)
2291+
self.assertContainsPermissions(response)
22692292
response = self.client.post(endpoint, data)
22702293
self.assertEqual(response.status_code, 302)
22712294
self.assertRedirects(response, endpoint)
@@ -2315,7 +2338,7 @@ def test_user_cant_edit_page_permissions(self):
23152338

23162339
with self.login_user_context(staff_user):
23172340
response = self.client.get(endpoint)
2318-
self.assertNotContains(response, '<h2>Page permissions</h2>', html=True)
2341+
self.assertNotContainsPermissions(response)
23192342
self.client.post(endpoint, data)
23202343
self.assertFalse(
23212344
self._page_permission_exists(
@@ -2357,7 +2380,7 @@ def test_user_can_delete_page_permissions(self):
23572380

23582381
with self.login_user_context(staff_user):
23592382
response = self.client.get(endpoint)
2360-
self.assertContains(response, '<h2>Page permissions</h2>', html=True)
2383+
self.assertContainsPermissions(response)
23612384
response = self.client.post(endpoint, data)
23622385
self.assertEqual(response.status_code, 302)
23632386
self.assertRedirects(response, endpoint)
@@ -2397,7 +2420,7 @@ def test_user_cant_delete_page_permissions(self):
23972420

23982421
with self.login_user_context(staff_user):
23992422
response = self.client.get(endpoint)
2400-
self.assertNotContains(response, '<h2>Page permissions</h2>', html=True)
2423+
self.assertNotContainsPermissions(response)
240124 F42D 24
self.client.post(endpoint, data)
24022425
self.assertTrue(self._page_permission_exists(user=staff_user_2))
24032426

@@ -2431,7 +2454,7 @@ def test_user_can_add_page_view_restrictions(self):
24312454

24322455
with self.login_user_context(staff_user):
24332456
response = self.client.get(endpoint)
2434-
self.assertContains(response, '<h2>Page permissions</h2>', html=True)
2457+
self.assertContainsPermissions(response)
24352458
response = self.client.post(endpoint, data)
24362459
self.assertEqual(response.status_code, 302)
24372460
self.assertRedirects(response, endpoint)
@@ -2468,7 +2491,7 @@ def test_user_cant_add_page_view_restrictions(self):
24682491

24692492
with self.login_user_context(staff_user):
24702493
response = self.client.get(endpoint)
2471-
self.assertNotContains(response, '<h2>Page permissions</h2>', html=True)
2494+
self.assertNotContainsPermissions(response)
24722495
self.client.post(endpoint, data)
24732496
self.assertFalse(self._page_permission_exists(user=staff_user_2, can_view=True))
24742497

@@ -2509,7 +2532,7 @@ def test_user_can_edit_page_view_restrictions(self):
25092532

25102533
with self.login_user_context(staff_user):
25112534
response = self.client.get(endpoint)
2512-
self.assertContains(response, '<h2>Page permissions</h2>', html=True)
2535+
self.assertContainsPermissions(response)
25132536
response = self.client.post(endpoint, data)
25142537
self.assertEqual(response.status_code, 302)
25152538
self.assertRedirects(response, endpoint)
@@ -2557,7 +2580,7 @@ def test_user_cant_edit_page_view_restrictions(self):
25572580

25582581
with self.login_user_context(staff_user):
25592582
response = self.client.get(endpoint)
2560-
self.assertNotContains(response, '<h2>Page permissions</h2>', html=True)
2583+
self.assertNotContainsPermissions(response)
25612584
self.client.post(endpoint, data)
25622585
self.assertFalse(
25632586
self._page_permission_exists(
@@ -2601,7 +2624,7 @@ def test_user_can_delete_page_view_restrictions(self):
26012624

26022625
with self.login_user_context(staff_user):
26032626
response = self.client.get(endpoint)
2604-
self.assertContains(response, '<h2>Page permissions</h2>', html=True)
2627+
self.assertContainsPermissions(response)
26052628
response = self.client.post(endpoint, data)
26062629
self.assertEqual(response.status_code, 302)
26072630
self.assertRedirects(response, endpoint)
@@ -2643,7 +2666,7 @@ def test_user_cant_delete_page_view_restrictions(self):
26432666

26442667
with self.login_user_context(staff_user):
26452668
response = self.client.get(endpoint)
2646-
self.assertNotContains(response, '<h2>Page permissions</h2>', html=True)
2669+
self.assertNotContainsPermissions(response)
26472670
self.client.post(endpoint, data)
26482671
self.assertTrue(self._page_permission_exists(user=staff_user_2, can_view=True))
26492672

@@ -3630,7 +3653,7 @@ def test_user_can_add_page_permissions(self):
36303653

36313654
with self.login_user_context(staff_user):
36323655
response = self.client.get(endpoint)
3633-
self.assertContains(response, '<h2>Page permissions</h2>', html=True)
3656+
self.assertContainsPermissions(response)
36343657
response = self.client.post(endpoint, data)
36353658
self.assertEqual(response.status_code, 302)
36363659
self.assertRedirects(response, endpoint)
@@ -3667,7 +3690,7 @@ def test_user_cant_add_page_permissions(self):
36673690

36683691
with self.login_user_context(staff_user):
36693692
response = self.client.get(endpoint)
3670-
self.assertNotContains(response, '<h2>Page permissions</h2>', html=True)
3693+
self.assertNotContainsPermissions(response)
36713694
self.client.post(endpoint, data)
36723695
self.assertFalse(self._page_permission_exists(user=staff_user_2))
36733696

@@ -3709,7 +3732,7 @@ def test_user_can_edit_page_permissions(self):
37093732

37103733
with self.login_user_context(staff_user):
37113734
response = self.client.get(endpoint)
3712-
self.assertContains(response, '<h2>Page permissions</h2>', html=True)
3735+
self.assertContainsPermissions(response)
37133736
response = self.client.post(endpoint, data)
37143737
self.assertEqual(response.status_code, 302)
37153738
self.assertRedirects(response, endpoint)
@@ -3759,7 +3782,7 @@ def test_user_cant_edit_page_permissions(self):
37593782

37603783
with self.login_user_context(staff_user):
37613784
response = self.client.get(endpoint)
3762-
self.assertNotContains(response, '<h2>Page permissions</h2>', html=True)
3785+
self.assertNotContainsPermissions(response)
37633786
self.client.post(endpoint, data)
37643787
self.assertFalse(
37653788
self._page_permission_exists(
@@ -3801,7 +3824,7 @@ def test_user_can_delete_page_permissions(self):
38013824

38023825
with self.login_user_context(staff_user):
38033826
response = self.client.get(endpoint)
3804-
self.assertContains(response, '<h2>Page permissions</h2>', html=True)
3827+
self.assertContainsPermissions(response)
38053828
response = self.client.post(endpoint, data)
38063829
self.assertEqual(response.status_code, 302)
38073830
self.assertRedirects(response, endpoint)
@@ -3841,7 +3864,7 @@ def test_user_cant_delete_page_permissions(self):
38413864

38423865
with self.login_user_context(staff_user):
38433866
response = self.client.get(endpoint)
3844-
self.assertNotContains(response, '<h2>Page permissions</h2>', html=True)
3867+
self.assertNotContainsPermissions(response)
38453868
self.client.post(endpoint, data)
38463869
self.assertTrue(self._page_permission_exists(user=staff_user_2))
38473870

@@ -3875,7 +3898,7 @@ def test_user_can_add_page_view_restrictions(self):
38753898

38763899
with self.login_user_context(staff_user):
38773900
response = self.client.get(endpoint)
3878-
self.assertContains(response, '<h2>Page permissions</h2>', html=True)
3901+
self.assertContainsPermissions(response)
38793902
response = self.client.post(endpoint, data)
38803903
self.assertEqual(response.status_code, 302)
38813904
self.assertRedirects(response, endpoint)
@@ -3912,7 +3935,7 @@ def test_user_cant_add_page_view_restrictions(self):
39123935

39133936
with self.login_user_context(staff_user):
39143937
response = self.client.get(endpoint)
3915-
self.assertNotContains(response, '<h2>Page permissions</h2>', html=True)
3938+
self.assertNotContainsPermissions(response)
39163939
self.client.post(endpoint, data)
39173940
self.assertFalse(self._page_permission_exists(user=staff_user_2, can_view=True))
39183941

@@ -3953,7 +3976,7 @@ def test_user_can_edit_page_view_restrictions(self):
39533976

39543977
with self.login_user_context(staff_user):
39553978
response = self.client.get(endpoint)
3956-
self.assertContains(response, '<h2>Page permissions</h2>', html=True)
3979+
self.assertContainsPermissions(response)
39573980
response = self.client.post(endpoint, data)
39583981
self.assertEqual(response.status_code, 302)
39593982
self.assertRedirects(response, endpoint)
@@ -4001,7 +4024,7 @@ def test_user_cant_edit_page_view_restrictions(self):
40014024

40024025
with self.login_user_context(staff_user):
40034026
response = self.client.get(endpoint)
4004-
self.assertNotContains(response, '<h2>Page permissions</h2>', html=True)
4027+
self.assertNotContainsPermissions(response)
40054028
self.client.post(endpoint, data)
40064029
self.assertFalse(
40074030
self._page_permission_exists(
@@ -4045,7 +4068,7 @@ def test_user_can_delete_page_view_restrictions(self):
40454068

40464069
with self.login_user_context(staff_user):
40474070
response = self.client.get(endpoint)
4048-
self.assertContains(response, '<h2>Page permissions</h2>', html=True)
4071+
self.assertContainsPermissions(response)
40494072
response = self.client.post(endpoint, data)
40504073
self.assertEqual(response.status_code, 302)
40514074
self.assertRedirects(response, endpoint)
@@ -4087,7 +4110,7 @@ def test_user_cant_delete_page_view_restrictions(self):
40874110

40884111
with self.login_user_context(staff_user):
40894112
response = self.client.get(endpoint)
4090-
self.assertNotContains(response, '<h2>Page permissions</h2>', html=True)
4113+
self.assertNotContainsPermissions(response)
40914114
self.client.post(endpoint, data)
40924115
self.assertTrue(self._page_permission_exists(user=staff_user_2, can_view=True))
40934116

test_requirements/databases.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
psycopg2==2.9.5
1+
psycopg>=3.1.8
22
mysqlclient==2.0.3

test_requirements/django-5.0.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
-r requirements_base.txt
2-
Django>=5.0a1,<5.1
2+
Django>=5.0,<5.1

test_requirements/django-5.1.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
-r requirements_base.txt
2+
Django>=5.1,<5.2

0 commit comments

Comments
 (0)
0