# # spec file for package python-mock # # Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via https://bugs.opensuse.org/ # %{?!python_module:%define python_module() python-%{**} python3-%{**}} %define oldpython python %global flavor %{nil} %if "%{flavor}" == "test" %define psuffix -test %bcond_without test %else %define psuffix %{nil} %bcond_with test %endif %bcond_without python2 Name: python-mock%{psuffix} Version: 3.0.5 Release: 1.2 Summary: A Python Mocking and Patching Library for Testing License: BSD-2-Clause Group: Development/Languages/Python URL: http://www.voidspace.org.uk/python/mock/ # no tests in sdis # Source: https://files.pythonhosted.org/packages/source/m/mock/mock-%{version}.tar.gz Source: https://github.com/testing-cabal/mock/archive/%{version}.tar.gz BuildRequires: %{python_module setuptools >= 17.1} BuildRequires: %{python_module six} BuildRequires: fdupes BuildRequires: python-rpm-macros Requires: python-six >= 1.9 %if %{with test} BuildRequires: %{python_module pytest} %endif BuildArch: noarch %if %{with python2} BuildRequires: python-funcsigs %endif %ifpython2 Requires: python-funcsigs >= 1 %endif %python_subpackages %description mock is a Python module that provides a core Mock class. It removes the need to create a host of stubs throughout your test suite. After performing an action, you can make assertions about which methods / attributes were used and arguments they were called with. You can also specify return values and set needed attributes in the normal way. %prep %setup -q -n mock-%{version} %build %python_build %install %if !%{with test} %python_install %python_expand %fdupes %{buildroot}%{$python_sitelib} %endif %check %if %{with test} %pytest %endif %if !%{with test} %files %{python_files} %license LICENSE.txt %doc README.rst CHANGELOG.rst %{python_sitelib}/* %endif %changelog * Tue May 14 2019 Ondřej Súkup - update to 3.0.5 - drop remove_unittest2.patch * more in CHANGELOG.rst * Mon Aug 13 2018 mcepl@suse.com - Remove dependency on unittest2 Add remove_unittest2.patch to facilitate that Remove unnecessary now unittest2-fallback.patch * Thu Jan 4 2018 tchvatal@suse.com - Condition python2 build to ensure we can build py3 only package * Tue Sep 5 2017 dmueller@suse.com - adjust requires for singlespec'ified python-funcsigs * Thu Oct 6 2016 jmatejek@suse.com - update for multipython build - remove test runner because it performs dark magic that causes a failure in test suite - implement fallback to python's own unittest instead of unittest2 if we're on Python 3 (to avoid dependencies on funcsigs and unittest2) (unittest2-fallback.patch) * Thu Oct 6 2016 tbechtold@suse.com - Fix pytohn-funcsigs Requires * Thu Jun 2 2016 tbechtold@suse.com - update to 2.0.0: * Fix #338: depend on a fixed version of funcsigs * More 3.2 support dropping cleanup * Update sync point * Add Mock.assert_called() * Issue25347 - Format the error message output of mock's assert_has_calls method * Issue #22138: Fix mock.patch behavior when patching descriptors. Restore original values after patching * Issue #24857: Comparing call_args to a long sequence now correctly returns a boolean result instead of raising an exception * Issue #23004: mock_open() now reads binary data correctly when the type of read_data is bytes * Add version info in the docs * Update six to a version with raises_from * Fix #328 - handle unicode __repr__ on Python 2.x * Drop support for Python 3.2 * Fix typo in docs/index.txt * Fix README.rst checking * Be clearer about Python version compat * Issue #295: use a setup_requires dependency * Improve grouping of imports in tests * Use six to detect python2/3 in main module * Use six to detect python2/3 in test modules - adjust Requires - use pypi.io as Source url * Fri Jan 8 2016 frede@b1-systems.de - BuildRequires python-setuptools >= 17.1 If you have a lower version the build will fail. * Mon Oct 26 2015 toddrme2178@gmail.com - BuildRequires python-funcsigs. It was already in Requires, but is also needed at build time for unit tests. * Mon Jul 27 2015 seife+obs@b1-systems.com - python-mock now requires python-pbr * Mon Jul 27 2015 dmueller@suse.com - update to 1.3.0: * Update sync point * Issue #21750: Further fixup to be styled like other mock APIs * Typo fix in mock.patch * Revert "Issue #21750: mock_open.read_data can now be read from each instance, as it" * Add 2.6 back to classifiers * Record sync point * Issue #21750: mock_open.read_data can now be read from each instance, as it could in Python 3.3 * Issue #18622: unittest.mock.mock_open().reset_mock would recurse infinitely * Folk should test 2.6 locally too * Closes #279: setuptools.version is too new * Support python 2.6 * Update sync point and sync docs * Issue #23661: unittest.mock side_effects can now be exceptions again * Abort installation if the installer is using setuptools<17.1 * Closes #269: setup_requires pbr 1.3 * Closes #257: version the dependency on six * Rename README.txt to README.rst * Make reproducing travis behaviour somewhat easier * Cleanup version number handling * Overhaul docs * Update docs * Remove stale MANIFEST.in, ignore pbr outputs * Convert to a package, use pbr, update metadata * Bump versions * Officially drop 2.6 support * Issue #23310: Fix MagicMock's initializer to work with __methods__. Behavior equivalent to m.configure_mock(). Patch by Kasia Jachim * Issue #23568: Add rdivmod support to MagicMock() objects * Issue #23581: Add matmul support to MagicMock * Issue #23326: Removed __ne__ implementations. Since fixing default __ne__ implementation in issue #21408 they are redundant * Issue #22823: Use set literals instead of creating a set from a list. Fixed an output of sets in examples * Closes #21270 : We now override tuple methods in mock.call objects * Suppress a couple more DeprecationWarnings in the test suite * Closes #21256: Printout of keyword args in deterministic order in mock calls * Removes unused varargs and varkwargs from assert_not_called() * Closes Issue 21262: New method assert_not_called for Mock * Closes Issue 21238: New keyword argument `unsafe` to Mock * Closes issue 21239. unittest.mock.patch.stopall() did not work deterministically when the same name was patched multiple times * Closes Issue 21222 * Closes issue 17660. You no longer need to explicitly pass create=True when patching builtin names * Issue 17826. Setting an iterable side_effect on a mock created by create_autospec now works * Issue 20968. unittest.mock.MagicMock now supports division * Issue #20189: Four additional builtin types (PyTypeObject, PyMethodDescr_Type, _PyMethodWrapper_Type, and PyWrapperDescr_Type) have been modified to provide introspection information for builtins. Also: many additional Lib, test suite, and Argument Clinic fixes * Issue #19594: Use specific asserts in unittest tests * Remove shadowed test * Adjust comment * Issue #19013: add a __main__ to unittest.test.testmock to ease CLI invocation * Issue #19013: add unittest.main() epilogs to unittest.mock's own test modules * Process DEFAULT values in mock side_effect that returns iterator * Closes issue 17467. Add readline and readlines support to unittest.mock.mock_open * Issue #17047: remove doubled words added in 3.3 as reported by Serhiy Storchaka and Matthew Barnett * Issue #17015: When it has a spec, a Mock object now inspects its signature when matching calls, so that arguments can be matched positionally or by name * Closes issue 15323. Improve failure message of Mock.assert_called_once_with * Close #14857: fix regression in references to PEP 3135 implicit __class__ closure variable. Reopens issue #12370, but also updates unittest.mock to workaround that issue * Remove incorrect comment * Closes issue 14634. unittest.mock.create_autospec now supports keyword only arguments * unittest.mock: removed another bit of Python 2 only code * Adding unittest.mock documentation * unittest.mock: remove another piece of Python 2 specific code * Remove more Python 2 code from unittest.mock (obsolete function attributes) * Support subclassing unittest.mock._patch and fix various obscure bugs around patcher spec arguments * unittest.mock.MagicMock objects are now unorderable by default * Removed XXX from unittest.mock docstring and switch to a nicer try...except...finally * Remove more Python 2 compatibility cruft from unittest.mock * PEP 417: Adding unittest.mock * Ignore patch rejects too * Add NEWS * Add PyPy to travis * Issue #20189: Four additional builtin types * Just hard-depend on unittest2 * Fix typo in test name * Some basic release process notes * Ignore more editor files * Add testrepository configuration * We never need sudo. Containers FTW * Fixup ignores * Iterating on .travis.yml * Setup Travis-CI - drop mock-unittest2py27.patch, no longer needed * Tue Feb 18 2014 ro@suse.de - added LICENSE.txt as doc file * Wed Feb 12 2014 cfarrell@suse.com - license update: BSD-2-Clause See the License.txt file * Wed Feb 12 2014 speilicke@suse.com - Replace python27x.diff with mock-unittest2py27.patch - Rather use "setup.py test" * Mon Feb 10 2014 dmueller@suse.com - add python27x.diff: Avoid dependency on unittest2 for anything newer than Python 2.7.x (bnc#863813) * Thu Oct 24 2013 speilicke@suse.com - Require python-setuptools instead of distribute (upstreams merged) * Fri Jan 11 2013 p.drouand@gmail.com - Initial python3 support * Fri Nov 23 2012 saschpe@suse.de - Update to version 1.0.1 + Functions decorated with patch variants have a __wrapped__ attribute pointing to the original function. This brings compatibility with the default behaviour in Python 3.3 (due to a new feature in functools.wraps). + See docs/changelog.txt for details * Sat Mar 10 2012 saschpe@gmx.de - Update to version 0.8.0: - See docs/changelog.txt for details * Fri Sep 2 2011 saschpe@suse.de - Update to version 0.7.2: * BUGFIX: instances of list subclasses can now be used as mock specs * BUGFIX: MagicMock equality / inequality protocol methods changed to use the default equality / inequality. - Simpler spec file * Tue Jan 25 2011 saschpe@suse.de - cleaned up spec file: * fixed noarch check (to make openSUSE-11.1 x86_64 bit work) * recompressed tarball with bzip2 * set RPM optflags * Fri Jan 21 2011 mapleoin@lavabit.com - fixed SourceURL * Fri Jan 21 2011 mapleoin@lavabit.com - removed DOS line-endings from doc file - removed spurious permissions from docs * Thu Jan 20 2011 mapleoin@lavabit.com - added README, docs and tests - run tests during %%%%check phase * Thu Jan 20 2011 mapleoin@lavabit.com - fixed Source URL * Thu Dec 9 2010 mapleoin@lavabit.com - fixed Group - set BuildArch to noarch - added py_requires macro * Tue Dec 7 2010 mapleoin@lavabit.com - initial package