Pytest-django

Latest version: v4.9.0

Safety actively analyzes 681881 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 10

4.9.0

-------------------

Compatibility
^^^^^^^^^^^^^

* Added official support for Django 5.1.
* Dropped support for Django 3.2 and 4.1.

Improvements
^^^^^^^^^^^^

* Respect the ``string_if_invalid`` template setting when
``--fail-on-template-vars`` is active and
:func:`pytest.mark.ignore_template_errors <pytest.mark.ignore_template_errors>`
is used.

* Avoid running database migrations for :class:`~django.test.SimpleTestCase`
unittest tests.

* Added docstrings to public fixtures.

Bugfixes
^^^^^^^^

* Fix type hints for ``pytest_django.asserts.assertFormError()`` and
``pytest_django.asserts.assertForSetError()``.

4.8.0

-------------------

Improvements
^^^^^^^^^^^^

* Added ``pytest_django.asserts.assertMessages()`` to mimic the behaviour of the
:meth:`~django.contrib.messages.test.MessagesTestMixin.assertMessages` method
for Django versions >= 5.0.

Bugfixes
^^^^^^^^

* Fix `--help`/`--version` crash in a partially configured app.

4.7.0

-------------------

Compatibility
^^^^^^^^^^^^^

* Official Django 5.0 support.

* Official Python 3.12 support.

Improvements
^^^^^^^^^^^^

* The Django test tags from the previous release now works on any
:class:`~django.test.SimpleTestCase` (i.e. any Django test framework test
class), not just :class:`~django.test.TransactionTestCase` classes.

* Some improvements for those of us who like to type their tests:

- Add ``pytest_django.DjangoAssertNumQueries`` for typing
:fixture:`django_assert_num_queries` and
:fixture:`django_assert_max_num_queries`.

- Add ``pytest_django.DjangoCaptureOnCommitCallbacks`` for typing
:fixture:`django_capture_on_commit_callbacks`.

- Add ``pytest_django.DjangoDbBlocker`` for typing
:fixture:`django_db_blocker`.

4.6.0

-------------------

Compatibility
^^^^^^^^^^^^^

* Official Django 4.1 & 4.2 support.

* Official Python 3.11 support.

* Drop support for Python version 3.5, 3.6 & 3.7.

* Drop official support for Django 4.0 and 2.2

* Drop support for pytest < 7.

Improvements
^^^^^^^^^^^^

* Add support for setting :py:attr:`available_apps
<django.test.TransactionTestCase.available_apps>` in the :func:`django_db
<pytest.mark.django_db>` marker.

* Convert Django :ref:`test tags <django:topics-tagging-tests>` to :ref:`Pytest
markers <pytest:mark examples>`.

* Show Django's version in the pytest ``django`` report header.

* Add precise ``pytest_django.asserts.assertQuerySetEqual`` typing.

Bugfixes
^^^^^^^^

* Fix bug where the effect of :func:`pytest.mark.ignore_template_errors
<pytest.mark.ignore_template_errors>` was not reset when using
``--fail-on-template-vars``.

4.5.2

-------------------

Bugfixes
^^^^^^^^

* Fix regression in v4.5.0 - ``pytest.mark.django_db(reset_sequence=True)`` now
implies ``transaction=True`` again.

4.5.1

-------------------

Bugfixes
^^^^^^^^

* Fix regression in v4.5.0 - database tests inside (non-unittest) classes were
not ordered correctly to run before non-database tests, same for transactional
tests before non-transactional tests.

Page 1 of 10

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.