]> git.ipfire.org Git - thirdparty/patchwork.git/commitdiff
tests: Always enable REST API
authorStephen Finucane <stephen@that.guru>
Mon, 15 May 2023 12:00:27 +0000 (13:00 +0100)
committerStephen Finucane <stephen@that.guru>
Mon, 15 May 2023 12:00:27 +0000 (13:00 +0100)
This means django-rest-framework is now a hard requirement for unit
tests. That seems reasonable.

Signed-off-by: Stephen Finucane <stephen@that.guru>
13 files changed:
patchwork/tests/api/test_bundle.py
patchwork/tests/api/test_check.py
patchwork/tests/api/test_comment.py
patchwork/tests/api/test_cover.py
patchwork/tests/api/test_event.py
patchwork/tests/api/test_patch.py
patchwork/tests/api/test_person.py
patchwork/tests/api/test_project.py
patchwork/tests/api/test_relation.py
patchwork/tests/api/test_series.py
patchwork/tests/api/test_user.py
patchwork/tests/api/utils.py
patchwork/tests/views/test_bundles.py

index c2a5fce3db3277a1cc79ecfa445b4a27578a35b5..a7173f1c293ebbd7a88103c114ebe3e0dfe8bdb8 100644 (file)
@@ -3,11 +3,10 @@
 #
 # SPDX-License-Identifier: GPL-2.0-or-later
 
-import unittest
-
-from django.conf import settings
+from django.test import override_settings
 from django.urls import NoReverseMatch
 from django.urls import reverse
+from rest_framework import status
 
 from patchwork.models import Bundle
 from patchwork.tests.api import utils
@@ -17,11 +16,8 @@ from patchwork.tests.utils import create_patch
 from patchwork.tests.utils import create_project
 from patchwork.tests.utils import create_user
 
-if settings.ENABLE_REST_API:
-    from rest_framework import status
-
 
-@unittest.skipUnless(settings.ENABLE_REST_API, 'requires ENABLE_REST_API')
+@override_settings(ENABLE_REST_API=True)
 class TestBundleAPI(utils.APITestCase):
     fixtures = ['default_tags']
 
index 25c70aa4b6133c3199174661cf917ba495734f90..cc57cd21a85878f8d9e947b5053d3c623b9fc2e7 100644 (file)
@@ -3,10 +3,10 @@
 #
 # SPDX-License-Identifier: GPL-2.0-or-later
 
-import unittest
-
-from django.conf import settings
+from django.test import override_settings
 from django.urls import reverse
+from rest_framework import status
+from rest_framework.test import APITestCase as BaseAPITestCase
 
 from patchwork.models import Check
 from patchwork.tests.api import utils
@@ -16,15 +16,8 @@ from patchwork.tests.utils import create_maintainer
 from patchwork.tests.utils import create_project
 from patchwork.tests.utils import create_user
 
-if settings.ENABLE_REST_API:
-    from rest_framework import status
-    from rest_framework.test import APITestCase as BaseAPITestCase
-else:
-    # stub out APITestCase
-    from django.test import TestCase as BaseAPITestCase
-
 
-@unittest.skipUnless(settings.ENABLE_REST_API, 'requires ENABLE_REST_API')
+@override_settings(ENABLE_REST_API=True)
 class TestCheckAPI(utils.APITestCase):
     fixtures = ['default_tags']
 
@@ -201,7 +194,7 @@ class TestCheckAPI(utils.APITestCase):
         self.assertEqual(status.HTTP_405_METHOD_NOT_ALLOWED, resp.status_code)
 
 
-@unittest.skipUnless(settings.ENABLE_REST_API, 'requires ENABLE_REST_API')
+@override_settings(ENABLE_REST_API=True)
 class TestCheckAPIMultipart(BaseAPITestCase):
     """Test a minimal subset of functionality where the data is passed as
     multipart form data rather than as a JSON blob.
index 994db70b3f75fa3c07165d6774f3e07811bad777..454320890963d20b3e4982b62a22a335e37562a0 100644 (file)
@@ -3,11 +3,10 @@
 #
 # SPDX-License-Identifier: GPL-2.0-or-later
 
-import unittest
-
-from django.conf import settings
+from django.test import override_settings
 from django.urls import NoReverseMatch
 from django.urls import reverse
+from rest_framework import status
 
 from patchwork.models import PatchComment
 from patchwork.models import CoverComment
@@ -22,11 +21,8 @@ from patchwork.tests.utils import create_person
 from patchwork.tests.utils import create_user
 from patchwork.tests.utils import SAMPLE_CONTENT
 
-if settings.ENABLE_REST_API:
-    from rest_framework import status
-
 
-@unittest.skipUnless(settings.ENABLE_REST_API, 'requires ENABLE_REST_API')
+@override_settings(ENABLE_REST_API=True)
 class TestCoverComments(utils.APITestCase):
     @staticmethod
     def api_url(cover, version=None, item=None):
@@ -259,7 +255,7 @@ class TestCoverComments(utils.APITestCase):
         self.assertEqual(status.HTTP_405_METHOD_NOT_ALLOWED, resp.status_code)
 
 
-@unittest.skipUnless(settings.ENABLE_REST_API, 'requires ENABLE_REST_API')
+@override_settings(ENABLE_REST_API=True)
 class TestPatchComments(utils.APITestCase):
     @staticmethod
     def api_url(patch, version=None, item=None):
index 44ae2ebfe981c38cd7fa2a8a6e05979fafe7ff27..4f16eef582868b70a2908ce10bf041714584d438 100644 (file)
@@ -4,11 +4,11 @@
 # SPDX-License-Identifier: GPL-2.0-or-later
 
 import email.parser
-import unittest
 
-from django.conf import settings
+from django.test import override_settings
 from django.urls import NoReverseMatch
 from django.urls import reverse
+from rest_framework import status
 
 from patchwork.tests.api import utils
 from patchwork.tests.utils import create_cover
@@ -17,11 +17,8 @@ from patchwork.tests.utils import create_maintainer
 from patchwork.tests.utils import create_series
 from patchwork.tests.utils import create_user
 
-if settings.ENABLE_REST_API:
-    from rest_framework import status
 
-
-@unittest.skipUnless(settings.ENABLE_REST_API, 'requires ENABLE_REST_API')
+@override_settings(ENABLED_REST_API=True)
 class TestCoverAPI(utils.APITestCase):
     fixtures = ['default_tags']
 
index 1a0d811d500e842ce79d7f51460b3948eeb32c52..0f93774b9b5a019d4eaec29b997c93396c606977 100644 (file)
@@ -3,10 +3,11 @@
 #
 # SPDX-License-Identifier: GPL-2.0-or-later
 
-import unittest
-
-from django.conf import settings
+from django.test import override_settings
 from django.urls import reverse
+from rest_framework import status
+from rest_framework.test import APITestCase
+
 
 from patchwork.models import Event
 from patchwork.tests.api import utils
@@ -19,17 +20,10 @@ from patchwork.tests.utils import create_patch_comment
 from patchwork.tests.utils import create_series
 from patchwork.tests.utils import create_state
 
-if settings.ENABLE_REST_API:
-    from rest_framework import status
-    from rest_framework.test import APITestCase
-else:
-    # stub out APITestCase
-    from django.test import TestCase as APITestCase
-
 
 # FIXME(stephenfin: This should inherit from 'utils.APITestCase', but we need
 # to fix our schema to work with recent versions of openapi_core
-@unittest.skipUnless(settings.ENABLE_REST_API, 'requires ENABLE_REST_API')
+@override_settings(ENABLE_REST_API=True)
 class TestEventAPI(APITestCase):
     @staticmethod
     def api_url(version=None):
index 03b5be11fc1c1ee3ff6acd7285351d9bf5e3dc27..f4c9f676aef50ba1bfb3602b2b8285bb0e159d0d 100644 (file)
@@ -5,11 +5,11 @@
 
 import email.parser
 from email.utils import make_msgid
-import unittest
 
-from django.conf import settings
+from django.test import override_settings
 from django.urls import NoReverseMatch
 from django.urls import reverse
+from rest_framework import status
 
 from patchwork.models import Patch
 from patchwork.tests.api import utils
@@ -22,9 +22,6 @@ from patchwork.tests.utils import create_series
 from patchwork.tests.utils import create_state
 from patchwork.tests.utils import create_user
 
-if settings.ENABLE_REST_API:
-    from rest_framework import status
-
 # a diff different from the default, required to test hash filtering
 SAMPLE_DIFF = """--- /dev/null\t2019-01-01 00:00:00.000000000 +0800
 +++ a\t2019-01-01 00:00:00.000000000 +0800
@@ -33,7 +30,7 @@ SAMPLE_DIFF = """--- /dev/null\t2019-01-01 00:00:00.000000000 +0800
 """
 
 
-@unittest.skipUnless(settings.ENABLE_REST_API, 'requires ENABLE_REST_API')
+@override_settings(ENABLED_REST_API=True)
 class TestPatchAPI(utils.APITestCase):
     fixtures = ['default_tags']
 
index 64c8065155c97f788e5ca2e714fb33202113eb89..ab0a8dc2738e3435666490fcbf70775ef9db5cc9 100644 (file)
@@ -3,22 +3,18 @@
 #
 # SPDX-License-Identifier: GPL-2.0-or-later
 
-import unittest
-
-from django.conf import settings
+from django.test import override_settings
 from django.urls import NoReverseMatch
 from django.urls import reverse
+from rest_framework import status
 
 from patchwork.tests.api import utils
 from patchwork.tests.utils import create_maintainer
 from patchwork.tests.utils import create_person
 from patchwork.tests.utils import create_user
 
-if settings.ENABLE_REST_API:
-    from rest_framework import status
-
 
-@unittest.skipUnless(settings.ENABLE_REST_API, 'requires ENABLE_REST_API')
+@override_settings(ENABLE_REST_API=True)
 class TestPersonAPI(utils.APITestCase):
     @staticmethod
     def api_url(item=None):
index 79a71d819171601ac9732b7726c3afcb3b2ae3d6..599f7aecc9d9365bb9c1c6a7c742ce5aeeef6354 100644 (file)
@@ -3,10 +3,9 @@
 #
 # SPDX-License-Identifier: GPL-2.0-or-later
 
-import unittest
-
-from django.conf import settings
+from django.test import override_settings
 from django.urls import reverse
+from rest_framework import status
 
 from patchwork.models import Project
 from patchwork.tests.api import utils
@@ -14,11 +13,8 @@ from patchwork.tests.utils import create_maintainer
 from patchwork.tests.utils import create_project
 from patchwork.tests.utils import create_user
 
-if settings.ENABLE_REST_API:
-    from rest_framework import status
-
 
-@unittest.skipUnless(settings.ENABLE_REST_API, 'requires ENABLE_REST_API')
+@override_settings(ENABLE_REST_API=True)
 class TestProjectAPI(utils.APITestCase):
     @staticmethod
     def api_url(item=None, version=None):
index d7518cb345c5634c7b53b8a662e2acdf6eb1ba54..edbe951f44bd0415b5bde7a9492b368ca4a7497b 100644 (file)
@@ -3,10 +3,9 @@
 #
 # SPDX-License-Identifier: GPL-2.0-or-later
 
-import unittest
-
-from django.conf import settings
+from django.test import override_settings
 from django.urls import reverse
+from rest_framework import status
 
 from patchwork.models import Patch
 from patchwork.models import PatchRelation
@@ -18,11 +17,8 @@ from patchwork.tests.utils import create_project
 from patchwork.tests.utils import create_relation
 from patchwork.tests.utils import create_user
 
-if settings.ENABLE_REST_API:
-    from rest_framework import status
-
 
-@unittest.skipUnless(settings.ENABLE_REST_API, 'requires ENABLE_REST_API')
+@override_settings(ENABLED_REST_API=True)
 class TestRelationSimpleAPI(utils.APITestCase):
     @staticmethod
     def api_url(item=None, version=None):
index 10a074a1953f062e4875dc1d8be88eae70c8ee21..890a96541617361b6f64936dd396e4fb549da1c8 100644 (file)
@@ -3,11 +3,10 @@
 #
 # SPDX-License-Identifier: GPL-2.0-or-later
 
-import unittest
-
-from django.conf import settings
+from django.test import override_settings
 from django.urls import NoReverseMatch
 from django.urls import reverse
+from rest_framework import status
 
 from patchwork.tests.api import utils
 from patchwork.tests.utils import create_cover
@@ -18,11 +17,8 @@ from patchwork.tests.utils import create_project
 from patchwork.tests.utils import create_series
 from patchwork.tests.utils import create_user
 
-if settings.ENABLE_REST_API:
-    from rest_framework import status
-
 
-@unittest.skipUnless(settings.ENABLE_REST_API, 'requires ENABLE_REST_API')
+@override_settings(ENABLE_REST_API=True)
 class TestSeriesAPI(utils.APITestCase):
     fixtures = ['default_tags']
 
index 10865757cece3b639f156ad2ab9d58a0228469a7..b4933b556b17aaede55e850da174fdf787904399 100644 (file)
@@ -3,21 +3,17 @@
 #
 # SPDX-License-Identifier: GPL-2.0-or-later
 
-import unittest
-
-from django.conf import settings
+from django.test import override_settings
 from django.urls import NoReverseMatch
 from django.urls import reverse
+from rest_framework import status
 
 from patchwork.tests.api import utils
 from patchwork.tests.utils import create_maintainer
 from patchwork.tests.utils import create_user
 
-if settings.ENABLE_REST_API:
-    from rest_framework import status
-
 
-@unittest.skipUnless(settings.ENABLE_REST_API, 'requires ENABLE_REST_API')
+@override_settings(ENABLE_REST_API=True)
 class TestUserAPI(utils.APITestCase):
     @staticmethod
     def api_url(item=None, version=None):
index bf88ca926d39e19b8588897f5731da59d8545338..c39bbbafd27cf0f30ced6b5d28ddb31bc52dbc44 100644 (file)
@@ -7,16 +7,12 @@ import functools
 import json
 import os
 
-from django.conf import settings
 from django.test import testcases
 
 from patchwork.tests.api import validator
 
-if settings.ENABLE_REST_API:
-    from rest_framework.test import APIClient as BaseAPIClient
-    from rest_framework.test import APIRequestFactory
-else:
-    from django.test import Client as BaseAPIClient
+from rest_framework.test import APIClient as BaseAPIClient
+from rest_framework.test import APIRequestFactory
 
 
 # docs/api/samples
index dd22bcfbf23dcc7dfccfef1260f2824b70aedb30..e5ac1efad82426c9d1b2c6e4d974e0f5c7d2a86d 100644 (file)
@@ -5,10 +5,9 @@
 
 import base64
 import datetime
-import unittest
 
-from django.conf import settings
 from django.test import TestCase
+from django.test import override_settings
 from django.urls import reverse
 from django.utils.html import escape
 from django.utils.http import urlencode
@@ -305,7 +304,7 @@ class BundlePrivateViewTest(BundleTestBase):
         self.assertEqual(response.status_code, 404)
 
 
-@unittest.skipUnless(settings.ENABLE_REST_API, 'requires ENABLE_REST_API')
+@override_settings(ENABLE_REST_API=True)
 class BundlePrivateViewMboxTest(BundlePrivateViewTest):
 
     """Ensure that non-owners can't view private bundle mboxes"""
@@ -824,10 +823,7 @@ class BundleReorderTest(BundleTestBase):
         self.check_reordering([0, 2, 3, 1, 4], 1, 4)
 
 
-@unittest.skipUnless(
-    settings.COMPAT_REDIR,
-    'requires compat redirection (use the COMPAT_REDIR setting)',
-)
+@override_settings(COMPAT_REDIR=True)
 class BundleRedirTest(BundleTestBase):
     """Validate redirection of legacy URLs."""