Skip to content

Commit 7a08fc0

Browse files
committed
Add PytestDjangoPrefixDeprecationWarning
Not meant to be released necessarily, but to test it.
1 parent b03f730 commit 7a08fc0

File tree

1 file changed

+23
-9
lines changed

1 file changed

+23
-9
lines changed

pytest_django/plugin.py

+23-9
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,9 @@
3333
from .fixtures import django_live_server # noqa
3434
from .fixtures import django_db_reset_sequences # noqa
3535
from .fixtures import django_rf # noqa
36-
from .fixtures import django_settings
36+
from .fixtures import django_settings # noqa
3737
from .fixtures import django_transactional_db # noqa
38+
import warnings
3839

3940

4041
from .lazy_django import django_settings_is_configured, skip_if_no_django
@@ -46,14 +47,27 @@
4647

4748

4849
# For backward compatibility.
49-
admin_client = django_admin_client
50-
admin_user = django_admin_user
51-
client = django_client
52-
db = django_db
53-
live_server = django_live_server
54-
rf = django_rf
55-
settings = django_settings
56-
transactional_db = django_transactional_db
50+
class PytestDjangoPrefixDeprecationWarning(DeprecationWarning):
51+
pass
52+
53+
54+
def wrap_deprecated_fixture(oldname, newname):
55+
@pytest.fixture(name=oldname)
56+
def inner(request):
57+
msg = "Please use fixture %s instead of %s." % (newname, oldname)
58+
warnings.warn(PytestDjangoPrefixDeprecationWarning(msg))
59+
return request.getfixturevalue(newname)
60+
return inner
61+
62+
63+
admin_client = wrap_deprecated_fixture("admin_client", "django_admin_client")
64+
admin_user = wrap_deprecated_fixture("admin_user", "django_admin_user")
65+
client = wrap_deprecated_fixture("client", "django_client")
66+
db = wrap_deprecated_fixture("db", "django_db")
67+
live_server = wrap_deprecated_fixture("live_server", "django_live_server")
68+
rf = wrap_deprecated_fixture("rf", "django_rf")
69+
settings = wrap_deprecated_fixture("settings", "django_settings")
70+
transactional_db = wrap_deprecated_fixture("transactional_db", "django_transactional_db")
5771

5872

5973
SETTINGS_MODULE_ENV = "DJANGO_SETTINGS_MODULE"

0 commit comments

Comments
 (0)