#18 Fix compatibility with pytest 8
Merged 2 months ago by frantisekz. Opened 2 months ago by lbalhar.
rpms/ lbalhar/python-alembic rawhide  into  rawhide

file added
+89
@@ -0,0 +1,89 @@ 

+ From 6bdb9043868d4bd04ebe3fe8a4991735d5f87ed3 Mon Sep 17 00:00:00 2001

+ From: Mike Bayer <mike_mp@zzzcomputing.com>

+ Date: Sun, 3 Mar 2024 23:11:50 -0500

+ Subject: [PATCH] use SQLAlchemy's xdist methods

+ 

+ Fixes to support pytest 8.1 for the test suite.

+ 

+ the use of teardown() was based on pytest's nose

+ compat, which is removed.  their xdist style tests use the name

+ "setup_method()" and "teardown_method()" now.

+ 

+ We have SQLAlchemy's pytestplugin in use which uses pytest fixtures

+ to invoke our own xdist style setUp and tearDown methods, which we

+ are already using here, so use those for this one test.

+ 

+ Fixes: #1435

+ Change-Id: I4c49e81fca6bfa957594714009531fe12691ace5

+ ---

+  docs/build/unreleased/1435.rst |  5 +++++

+  tests/test_command.py          | 15 +++++++--------

+  tox.ini                        |  2 +-

+  3 files changed, 13 insertions(+), 9 deletions(-)

+  create mode 100644 docs/build/unreleased/1435.rst

+ 

+ diff --git a/docs/build/unreleased/1435.rst b/docs/build/unreleased/1435.rst

+ new file mode 100644

+ index 00000000..8f9e4cd0

+ --- /dev/null

+ +++ b/docs/build/unreleased/1435.rst

+ @@ -0,0 +1,5 @@

+ +.. change::

+ +    :tags: bug, tests

+ +    :tickets: 1435

+ +

+ +    Fixes to support pytest 8.1 for the test suite.

+ diff --git a/tests/test_command.py b/tests/test_command.py

+ index c665f955..04a624ad 100644

+ --- a/tests/test_command.py

+ +++ b/tests/test_command.py

+ @@ -64,7 +64,7 @@ def setup_class(cls):

+      def teardown_class(cls):

+          clear_staging_env()

+  

+ -    def teardown(self):

+ +    def tearDown(self):

+          self.cfg.set_main_option("revision_environment", "false")

+  

+      @classmethod

+ @@ -206,13 +206,12 @@ def test_history_indicate_current(self):

+  

+  

+  class RevisionEnvironmentTest(_BufMixin, TestBase):

+ -    @classmethod

+ -    def setup(cls):

+ -        cls.env = staging_env()

+ -        cls.cfg = _sqlite_testing_config()

+ -        cls._setup_env_file()

+ +    def setUp(self):

+ +        self.env = staging_env()

+ +        self.cfg = _sqlite_testing_config()

+ +        self._setup_env_file()

+  

+ -    def teardown(self):

+ +    def tearDown(self):

+          self.cfg.set_main_option("revision_environment", "false")

+          clear_staging_env()

+  

+ @@ -1144,7 +1143,7 @@ def setup_class(cls):

+          cls.cfg = _sqlite_testing_config()

+          cls.a, cls.b, cls.c = three_rev_fixture(cls.cfg)

+  

+ -    def teardown(self):

+ +    def tearDown(self):

+          os.environ.pop("ALEMBIC_CONFIG", None)

+  

+      @classmethod

+ diff --git a/tox.ini b/tox.ini

+ index 3b4c1ff7..4b0f082b 100644

+ --- a/tox.ini

+ +++ b/tox.ini

+ @@ -8,7 +8,7 @@ SQLA_REPO = {env:SQLA_REPO:git+https://github.com/sqlalchemy/sqlalchemy.git}

+  [testenv]

+  cov_args=--cov=alembic --cov-report term --cov-report xml

+  

+ -deps=pytest>4.6

+ +deps=pytest>4.6,<8.2

+       pytest-xdist

+       sqla13: pytest<7

+       sqla13: {[tox]SQLA_REPO}@rel_1_3#egg=sqlalchemy

file modified
+3
@@ -8,6 +8,9 @@ 

  URL:              https://pypi.io/project/alembic

  Source0:          %{pypi_source alembic}

  

+ # Compatibility with pytest 8

+ Patch:            https://github.com/sqlalchemy/alembic/commit/6bdb90.patch

+ 

  BuildArch:        noarch

  

  BuildRequires:    help2man

Backporting an upstream patch to the current release allows us to update pytest to version 8 soon.

Pull-Request has been merged by frantisekz

2 months ago
Metadata