1
0
mirror of https://github.com/django/django.git synced 2025-10-23 21:59:11 +00:00

Refs #35844 -- Expanded compatibility for expected error messages in command tests on Python 3.12 and 3.13.

Updated CommandTests.test_subparser_invalid_option and CommandDBOptionChoiceTests.test_invalid_choice_db_option to use assertRaisesRegex() for compatibility with modified error messages in Python 3.12, 3.13, and 3.14+..
This commit is contained in:
Tainara Palmeira
2024-10-28 14:46:20 +01:00
committed by Claude Paroz
parent d7f78eb5d6
commit fc22fdd34f
2 changed files with 8 additions and 18 deletions

View File

@@ -34,7 +34,7 @@ from django.db.migrations.recorder import MigrationRecorder
from django.test import LiveServerTestCase, SimpleTestCase, TestCase, override_settings
from django.test.utils import captured_stderr, captured_stdout
from django.urls import path
from django.utils.version import PY313, PY314, get_docs_version
from django.utils.version import PY313, get_docs_version
from django.views.static import serve
from . import urls
@@ -2355,16 +2355,10 @@ class Discovery(SimpleTestCase):
class CommandDBOptionChoiceTests(SimpleTestCase):
def test_invalid_choice_db_option(self):
if PY314:
expected_error = (
"Error: argument --database: invalid choice: 'deflaut' "
"(choose from default, other)"
)
else:
expected_error = (
"Error: argument --database: invalid choice: 'deflaut' "
"(choose from 'default', 'other')"
)
expected_error = (
r"Error: argument --database: invalid choice: 'deflaut' "
r"\(choose from '?default'?, '?other'?\)"
)
args = [
"changepassword",
"createsuperuser",
@@ -2384,7 +2378,7 @@ class CommandDBOptionChoiceTests(SimpleTestCase):
]
for arg in args:
with self.assertRaisesMessage(CommandError, expected_error):
with self.assertRaisesRegex(CommandError, expected_error):
call_command(arg, "--database", "deflaut", verbosity=0)