[PATCH] tests: fix assertion rewriting in some tests with pytest-3.0.0+
Mads Kiilerich
mads at kiilerich.com
Sat Sep 10 11:51:00 UTC 2016
On 09/09/2016 04:03 PM, Thomas De Schampheleire wrote:
> # HG changeset patch
> # User Thomas De Schampheleire <thomas.de.schampheleire at gmail.com>
> # Date 1473428048 -7200
> # Fri Sep 09 15:34:08 2016 +0200
> # Node ID 6889d3b7435f1c4bb91d24a3af7774323ecbc778
> # Parent 59639343672495cb89be54b98f1d6d3a4c44307c
> tests: fix assertion rewriting in some tests with pytest-3.0.0+
>
> Since pytest 3.0.0, asserts present in modules that are not directly seen by
> pytest as 'test modules', are no longer rewritten to have improved
> reporting, unless they are explicitly marked as up-for-rewriting.
>
> This is e.g. the case for asserts in files like
> kallithea/tests/api/api_base.py and kallithea/tests/models/common.py.
>
> See
> http://doc.pytest.org/en/latest/changelog.html#id13
> http://doc.pytest.org/en/latest/writing_plugins.html#assertion-rewriting
>
> diff --git a/kallithea/tests/__init__.py b/kallithea/tests/__init__.py
> --- a/kallithea/tests/__init__.py
> +++ b/kallithea/tests/__init__.py
> @@ -42,6 +42,10 @@ from routes.util import URLGenerator
> from webtest import TestApp
> import pytest
>
> +# make sure that all asserts under kallithea/tests benefit from advanced assert
> +# reporting, before importing these modules.
> +pytest.register_assert_rewrite('kallithea.tests')
But also, why was it changed in pytest? What is the point in not having
it enabled everywhere?
It sounds like something that also (and perhaps better?) could be set in
pytest.ini?
/Mads
More information about the kallithea-general
mailing list