mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2025-07-19 15:29:08 +02:00

Fixes following regressions seen with python 3.12 upgrade AssertionError: Failed ptests: {'python3-pytest-mock': ['tests/test_pytest_mock.py::TestMockerStub::test_failure_message_with_no_name', 'tests/test_pytest_mock.py::TestMockerStub::test_failure_message_with_name[None]', 'tests/test_pytest_mock.py::TestMockerStub::test_failure_message_with_name[]', 'tests/test_pytest_mock.py::TestMockerStub::test_failure_message_with_name[f]', 'tests/test_pytest_mock.py::TestMockerStub::test_failure_message_with_name[The_Castle_of_aaarrrrggh]']} Signed-off-by: Khem Raj <raj.khem@gmail.com>
93 lines
3.7 KiB
Diff
93 lines
3.7 KiB
Diff
From 8480bb6d0500f933be039cfec65e04157e6ecffe Mon Sep 17 00:00:00 2001
|
|
From: Bruno Oliveira <nicoddemus@gmail.com>
|
|
Date: Tue, 19 Dec 2023 08:24:23 -0300
|
|
Subject: [PATCH 1/3] Fix tests for Python 3.11 and 3.12
|
|
|
|
Fixes #401.
|
|
Upstream-Status: Backport [https://github.com/pytest-dev/pytest-mock/pull/403]
|
|
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
---
|
|
tests/test_pytest_mock.py | 3 +--
|
|
1 file changed, 1 insertion(+), 2 deletions(-)
|
|
|
|
diff --git a/tests/test_pytest_mock.py b/tests/test_pytest_mock.py
|
|
index 3ee00da..7acb361 100644
|
|
--- a/tests/test_pytest_mock.py
|
|
+++ b/tests/test_pytest_mock.py
|
|
@@ -246,9 +246,8 @@ def __test_failure_message(self, mocker: MockerFixture, **kwargs: Any) -> None:
|
|
msg = "Expected call: {0}()\nNot called"
|
|
expected_message = msg.format(expected_name)
|
|
stub = mocker.stub(**kwargs)
|
|
- with pytest.raises(AssertionError) as exc_info:
|
|
+ with pytest.raises(AssertionError, match=re.escape(expected_message)) as exc_info:
|
|
stub.assert_called_with()
|
|
- assert str(exc_info.value) == expected_message
|
|
|
|
def test_failure_message_with_no_name(self, mocker: MagicMock) -> None:
|
|
self.__test_failure_message(mocker)
|
|
|
|
From c596504e062be06475b03122c9c0cc732ae87840 Mon Sep 17 00:00:00 2001
|
|
From: "pre-commit-ci[bot]"
|
|
<66853113+pre-commit-ci[bot]@users.noreply.github.com>
|
|
Date: Tue, 19 Dec 2023 11:24:38 +0000
|
|
Subject: [PATCH 2/3] [pre-commit.ci] auto fixes from pre-commit.com hooks
|
|
|
|
for more information, see https://pre-commit.ci
|
|
---
|
|
tests/test_pytest_mock.py | 4 +++-
|
|
1 file changed, 3 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/tests/test_pytest_mock.py b/tests/test_pytest_mock.py
|
|
index 7acb361..c185f2a 100644
|
|
--- a/tests/test_pytest_mock.py
|
|
+++ b/tests/test_pytest_mock.py
|
|
@@ -246,7 +246,9 @@ def __test_failure_message(self, mocker: MockerFixture, **kwargs: Any) -> None:
|
|
msg = "Expected call: {0}()\nNot called"
|
|
expected_message = msg.format(expected_name)
|
|
stub = mocker.stub(**kwargs)
|
|
- with pytest.raises(AssertionError, match=re.escape(expected_message)) as exc_info:
|
|
+ with pytest.raises(
|
|
+ AssertionError, match=re.escape(expected_message)
|
|
+ ) as exc_info:
|
|
stub.assert_called_with()
|
|
|
|
def test_failure_message_with_no_name(self, mocker: MagicMock) -> None:
|
|
|
|
From 6da5b0506d6378a8dbe5ae314d5134e6868aeabd Mon Sep 17 00:00:00 2001
|
|
From: danigm <daniel.garcia@suse.com>
|
|
Date: Wed, 20 Dec 2023 16:02:13 +0100
|
|
Subject: [PATCH 3/3] Update expected message to match python 3.11.7 (#404)
|
|
|
|
https://github.com/python/cpython/issues/111019
|
|
|
|
Fixes #401.
|
|
Closes #403.
|
|
---
|
|
tests/test_pytest_mock.py | 6 +++++-
|
|
1 file changed, 5 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/tests/test_pytest_mock.py b/tests/test_pytest_mock.py
|
|
index c185f2a..01534a4 100644
|
|
--- a/tests/test_pytest_mock.py
|
|
+++ b/tests/test_pytest_mock.py
|
|
@@ -25,6 +25,8 @@
|
|
|
|
# Python 3.8 changed the output formatting (bpo-35500), which has been ported to mock 3.0
|
|
NEW_FORMATTING = sys.version_info >= (3, 8)
|
|
+# Python 3.11.7 changed the output formatting, https://github.com/python/cpython/issues/111019
|
|
+NEWEST_FORMATTING = sys.version_info >= (3, 11, 7)
|
|
|
|
if sys.version_info[:2] >= (3, 8):
|
|
from unittest.mock import AsyncMock
|
|
@@ -240,7 +242,9 @@ def test_repr_with_name(self, mocker: MockerFixture) -> None:
|
|
|
|
def __test_failure_message(self, mocker: MockerFixture, **kwargs: Any) -> None:
|
|
expected_name = kwargs.get("name") or "mock"
|
|
- if NEW_FORMATTING:
|
|
+ if NEWEST_FORMATTING:
|
|
+ msg = "expected call not found.\nExpected: {0}()\n Actual: not called."
|
|
+ elif NEW_FORMATTING:
|
|
msg = "expected call not found.\nExpected: {0}()\nActual: not called."
|
|
else:
|
|
msg = "Expected call: {0}()\nNot called"
|