diff --git a/.python-pytest-mock.metadata b/.python-pytest-mock.metadata index 0e12894..4973e52 100644 --- a/.python-pytest-mock.metadata +++ b/.python-pytest-mock.metadata @@ -1 +1 @@ -59baa0f036a4d81300199c5400d54274a23d6b49 SOURCES/pytest-mock-1.9.0.tar.gz +7b5fb554a6db62115bdcbfda33308c2059911465 SOURCES/pytest-mock-3.5.1.tar.gz diff --git a/SOURCES/fix-expectations-pytest-4.6.3.patch b/SOURCES/fix-expectations-pytest-4.6.3.patch new file mode 100644 index 0000000..f38a52f --- /dev/null +++ b/SOURCES/fix-expectations-pytest-4.6.3.patch @@ -0,0 +1,46 @@ +From 970e4b1f8cfd6bd750b4c8240efad378cbf049c2 Mon Sep 17 00:00:00 2001 +From: Bruno Oliveira +Date: Mon, 1 Jul 2019 19:31:36 -0300 +Subject: [PATCH] Fix tests expectations with latest pytest + +Fix #149 +--- + test_pytest_mock.py | 2 +- + tox.ini | 4 ++-- + 2 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/test_pytest_mock.py b/test_pytest_mock.py +index 562ff0c..cdc04fe 100644 +--- a/test_pytest_mock.py ++++ b/test_pytest_mock.py +@@ -639,7 +639,7 @@ def test(mocker): + "*Use -v to get the full diff*", + "*Kwargs:*", + "*assert {} == {'bar': 4}*", +- "*Right contains more items:*", ++ "*Right contains* more item*", + "*{'bar': 4}*", + "*Use -v to get the full diff*", + ] +diff --git a/tox.ini b/tox.ini +index 427b25f..98117bf 100644 +--- a/tox.ini ++++ b/tox.ini +@@ -10,7 +10,7 @@ commands = + + [testenv:norewrite] + commands = +- pytest test_pytest_mock.py --assert=plain -ra ++ pytest test_pytest_mock.py --assert=plain + + [testenv:linting] + skipsdist = True +@@ -20,7 +20,7 @@ basepython = python3.6 + commands = pre-commit run --all-files --show-diff-on-failure + + [pytest] +-addopts = -ra ++addopts = -r a + + [flake8] + max-line-length = 88 diff --git a/SOURCES/fix-for-pytest3.patch b/SOURCES/fix-for-pytest3.patch new file mode 100644 index 0000000..0b243f8 --- /dev/null +++ b/SOURCES/fix-for-pytest3.patch @@ -0,0 +1,21 @@ +diff --git a/test_pytest_mock.py b/test_pytest_mock.py +index 1e47d0e..e54649a 100644 +--- a/test_pytest_mock.py ++++ b/test_pytest_mock.py +@@ -176,7 +176,7 @@ def __test_failure_message(self, mocker, **kwargs): + stub = mocker.stub(**kwargs) + with pytest.raises(AssertionError) as exc_info: + stub.assert_called_with() +- assert exc_info.value.msg == expected_message ++ assert str(exc_info.value) == expected_message + + def test_failure_message_with_no_name(self, mocker): + self.__test_failure_message(mocker) +@@ -352,7 +352,7 @@ def assert_argument_introspection(left, right): + # test was run by examining sys.argv + verbose = any(a.startswith('-v') for a in sys.argv) + expected = '\n '.join(util._compare_eq_iterable(left, right, verbose)) +- assert expected in e.msg ++ assert expected in str(e) + else: + raise AssertionError("DID NOT RAISE") diff --git a/SOURCES/fix-mock-python-3.8.patch b/SOURCES/fix-mock-python-3.8.patch new file mode 100644 index 0000000..8a943a7 --- /dev/null +++ b/SOURCES/fix-mock-python-3.8.patch @@ -0,0 +1,46 @@ +From b2683fdfc2fbd67dfc14bfc8e9d2c06530975397 Mon Sep 17 00:00:00 2001 +From: Bruno Oliveira +Date: Fri, 3 May 2019 08:58:31 -0300 +Subject: [PATCH] Fix tests due to new formatting in mock 3.0 and python 3.8 + +--- + test_pytest_mock.py | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/test_pytest_mock.py b/test_pytest_mock.py +index 7bc38cb..562ff0c 100644 +--- a/test_pytest_mock.py ++++ b/test_pytest_mock.py +@@ -10,11 +10,11 @@ + + # could not make some of the tests work on PyPy, patches are welcome! + skip_pypy = pytest.mark.skipif( +- platform.python_implementation() == "PyPy", reason="could not make work on pypy" ++ platform.python_implementation() == "PyPy", reason="could not make it work on pypy" + ) + +-# Python 3.8 changed the output formatting (bpo-35500). +-PY38 = sys.version_info >= (3, 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) or sys.version_info[0] == 2 + + + @pytest.fixture +@@ -209,7 +209,7 @@ def test_repr_with_name(self, mocker): + + def __test_failure_message(self, mocker, **kwargs): + expected_name = kwargs.get("name") or "mock" +- if PY38: ++ if NEW_FORMATTING: + msg = "expected call not found.\nExpected: {0}()\nActual: not called." + else: + msg = "Expected call: {0}()\nNot called" +@@ -620,7 +620,7 @@ def test(mocker): + """ + ) + result = testdir.runpytest("-s") +- if PY38: ++ if NEW_FORMATTING: + expected_lines = [ + "*AssertionError: expected call not found.", + "*Expected: mock('', bar=4)", diff --git a/SPECS/python-pytest-mock.spec b/SPECS/python-pytest-mock.spec index 4cb7a04..6cc4f34 100644 --- a/SPECS/python-pytest-mock.spec +++ b/SPECS/python-pytest-mock.spec @@ -1,72 +1,172 @@ %global pypi_name pytest-mock %global file_name pytest_mock -%global desc This plugin installs a mocker fixture which is a thin-wrapper around the \ -patching API provided by the mock package, but with the benefit of not having \ -to worry about undoing patches at the end of a test. - Name: python-%{pypi_name} -Version: 1.9.0 -Release: 4%{?dist} +Version: 3.5.1 +Release: 2%{?dist} Summary: Thin-wrapper around the mock package for easier use with py.test License: MIT -URL: https://pypi.python.org/pypi/pytest-mock -Source0: https://files.pythonhosted.org/packages/53/92/ed98ceca37fe779b4277382c7dd501936bac9d54bc3a19c32ae876701c81/pytest-mock-1.9.0.tar.gz +URL: https://github.com/pytest-dev/pytest-mock/ +Source0: %{pypi_source} BuildArch: noarch %description -%{desc} - +This plugin installs a mocker fixture which is a thin-wrapper around the +patching API provided by the mock package, but with the benefit of not having +to worry about undoing patches at the end of a test. %package -n python3-%{pypi_name} Summary: %{summary} -BuildArch: noarch + BuildRequires: python3-devel -BuildRequires: python3-pytest >= 2.7 -BuildRequires: python3-setuptools_scm -Requires: python3-pytest >= 2.7 +BuildRequires: %py3_dist setuptools +BuildRequires: %py3_dist pytest +BuildRequires: %py3_dist setuptools_scm +BuildRequires: %py3_dist pytest-asyncio %{?python_provide:%python_provide python3-%{pypi_name}} %description -n python3-%{pypi_name} -%{desc} +This plugin installs a mocker fixture which is a thin-wrapper around the +patching API provided by the mock package, but with the benefit of not having +to worry about undoing patches at the end of a test. %prep -%setup -qn %{pypi_name}-%{version} +%autosetup -n %{pypi_name}-%{version} -p1 rm -rf *.egg-info - # Correct end of line encoding for README sed -i 's/\r$//' README.rst - %build %py3_build %install %py3_install - %check -PYTHONPATH="$(pwd)" py.test-%{python3_version} test_pytest_mock.py +%pytest -v tests \ + -k "not test_standalone_mock and not test_detailed_introspection and not test_detailed_introspection \ + and not test_assert_called_args_with_introspection and not test_assert_called_kwargs_with_introspection" %files -n python3-%{pypi_name} -%doc README.rst +%doc CHANGELOG.rst README.rst %license LICENSE +%{python3_sitelib}/%{file_name}/ %{python3_sitelib}/%{file_name}-%{version}-py%{python3_version}.egg-info/ -%{python3_sitelib}/%{file_name}.py* -%{python3_sitelib}/__pycache__/%{file_name}*.py* -%{python3_sitelib}/_pytest_mock_version.py* -%{python3_sitelib}/__pycache__/_pytest_mock_version.cpython* - %changelog -* Thu Apr 25 2019 Tomas Orsava - 1.9.0-4 -- Bumping due to problems with modular RPM upgrade path -- Resolves: rhbz#1695587 +* Wed Jan 27 2021 Fedora Release Engineering - 3.5.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Mon Jan 11 2021 Fabian Affolter - 3.5.1-1 +- Update to new upstream release 3.5.1 (#1912592) + +* Tue Jan 05 2021 Fabian Affolter - 3.5.0-1 +- Update to new upstream release 3.5.0 (#1912592) + +* Wed Dec 16 2020 Fabian Affolter - 3.4.0-1 +- Update macros +- Update to new upstream release 3.4.0 (#1907878) + +* Fri Aug 21 2020 Fabian Affolter - 3.3.0-1 +- Update to latest upstream release 3.3.0 (rhbz#1871290) + +* Fri Aug 21 2020 Fabian Affolter - 3.2.0-1 +- Update to latest upstream release 3.2.0 (rhbz#1756646) + +* Wed Jul 29 2020 Fedora Release Engineering - 1.10.4-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Fri May 29 2020 Miro Hrončok - 1.10.4-9 +- Drop manual requires on python3-pytest to support usage with pytest4 compat package + +* Sun May 24 2020 Miro Hrončok - 1.10.4-8 +- Rebuilt for Python 3.9 + +* Thu Jan 30 2020 Fedora Release Engineering - 1.10.4-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Tue Oct 01 2019 Miro Hrončok - 1.10.4-6 +- Subpackage python2-pytest-mock has been removed + See https://fedoraproject.org/wiki/Changes/Mass_Python_2_Package_Removal + +* Sat Aug 17 2019 Miro Hrončok - 1.10.4-5 +- Rebuilt for Python 3.8 + +* Thu Aug 01 2019 Julien Enselme - 1.10.4-4 +- Fix build issues with python 3.8 and mock 3.0 + +* Tue Jul 30 2019 Julien Enselme - 1.10.4-3 +- Fix build issues with pytest 4.6.3 + +* Fri Jul 26 2019 Fedora Release Engineering - 1.10.4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Sat Jul 13 2019 Julien Enselme - 1.10.4-1 +- Update to 1.10.4 + +* Thu Apr 04 2019 Miro Hrončok - 1.10.3-1 +- Update to 1.10.3 + +* Sat Feb 23 2019 Julien Enselme - 1.10.1-1 +- Update to 1.10.1 + +* Sat Feb 02 2019 Fedora Release Engineering - 1.10.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Sat Jul 14 2018 Fedora Release Engineering - 1.10.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Mon Jun 18 2018 Miro Hrončok - 1.10.0-2 +- Rebuilt for Python 3.7 + +* Mon May 07 2018 Julien Enselme - 1.10.0-1 +- Update to 1.10.0 + +* Sun Apr 15 2018 Julien Enselme - 1.9.0-1 +- Update to 1.9.0 + +* Thu Mar 01 2018 Julien Enselme - 1.7.1-1 +- Update to 1.7.1 + +* Mon Feb 19 2018 Julien Enselme - 1.7.0-1 +- Update to 1.7.0 + +* Fri Feb 09 2018 Fedora Release Engineering - 1.6.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Sat Sep 16 2017 Julien Enselme - 1.6.3-1 +- Update to 1.6.3 + +* Thu Jul 27 2017 Fedora Release Engineering - 1.6.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Sun Jul 23 2017 Julien Enselme - 1.6.2-1 +- Update to 1.6.2 + +* Wed Apr 05 2017 Julien Enselme - 1.6.0-2 +- Add missing BR + +* Wed Apr 05 2017 Julien Enselme - 1.6.0-1 +- Update to 1.6.0 + +* Sat Feb 11 2017 Fedora Release Engineering - 1.2-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Mon Dec 19 2016 Miro Hrončok - 1.2-3 +- Rebuild for Python 3.6 + +* Sat Oct 01 2016 Julien Enselme - 1.2-2 +- Add patch to fix tests with pytest3 + +* Sun Sep 18 2016 Julien Enselme - 1.2-1 +- Update to 1.2 -* Tue Jul 31 2018 Lumír Balhar - 1.9.0-2 -- Make possible to disable python3 subpackage +* Wed Aug 31 2016 Julien Enselme - 1.1-3 +- Use %%summary instead of custom %%sum macro -* Mon Jul 16 2018 Lumír Balhar - 1.9.0-2 -- First version for python27 module +* Mon Aug 29 2016 Julien Enselme - 1.1-2 +- Add python2-mock to BR so %%check passes correctly. +* Tue Jul 26 2016 Julien Enselme - 1.1-1 +- Inital package