# # spec file for package python-fixtures # # Copyright (c) 2023 SUSE LLC # # 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/ # %{?sle15_python_module_pythons} Name: python-fixtures Version: 4.1.0 Release: 1.8 Summary: Fixtures, reusable state for writing clean tests and more License: Apache-2.0 OR BSD-3-Clause URL: https://github.com/testing-cabal/fixtures Source: https://files.pythonhosted.org/packages/source/f/fixtures/fixtures-%{version}.tar.gz Patch0: handle-no-external-mock.patch BuildRequires: %{python_module pbr >= 5.7.0} BuildRequires: %{python_module setuptools} #TESTS BuildRequires: %{python_module extras} BuildRequires: %{python_module testtools >= 2.5.0} #/TESTS BuildRequires: fdupes BuildRequires: python-rpm-macros Requires: python-extras Requires: python-pbr >= 5.7.0 Requires: python-testtools >= 2.5.0 BuildArch: noarch %python_subpackages %description Fixtures defines a Python contract for reusable state / support logic, primarily for unit testing. Helper and adaption logic is included to make it easy to write your own fixtures using the fixtures contract. Glue code is provided that makes using fixtures that meet the Fixtures contract in unittest compatible test cases easy and straight forward. %prep %autosetup -p1 -n fixtures-%{version} %build %python_build %install %python_install %python_expand %fdupes %{buildroot}%{$python_sitelib} %check %python_exec -m testtools.run fixtures.test_suite %files %{python_files} %license COPYING %doc Apache-2.0 BSD NEWS README.rst %{python_sitelib}/fixtures %{python_sitelib}/fixtures-%{version}-py%{python_version}.egg-info %changelog * Sat May 27 2023 Dirk Müller <dmueller@suse.com> - update to 4.1.0: * Drop support for Python 3.6 (EOL) * Add a new ``WarningsFilter`` filter, allowing users to filter warnings as part of their tests, before restoring said filters. * Fri Apr 21 2023 Dirk Müller <dmueller@suse.com> - add sle15_python_module_pythons (jsc#PED-68) * Thu Apr 13 2023 Matej Cepl <mcepl@suse.com> - Make calling of %%{sle15modernpython} optional. * Thu Oct 6 2022 Dirk Müller <dmueller@suse.com> - update to 4.0.1: * Remove testtools from requirements.txt as well * github: Add all pypy3 versions to test matrix * github: Add Python 3.11 betas to test matrix * tox: Add py311 * Support Popen's process\_group argument from Python 3.11 * Update classmethod expectations (again) for Python 3.11 * Revert to the previous classmethod expectations for PyPy3.9 * Wed May 11 2022 Steve Kowalik <steven.kowalik@suse.com> - Update to 4.0.0: * Document more changes since 3.0.0 * Mention extra in another place in README * Move testtools requirement to a "streams" extra * Stop using testtools.helpers.try_import * Fix MockPatchMultiple.DEFAULT * Fix YAML type confusion * Add support for Python 3.10 * Mark README as rST * setup.cfg: Replace dashes with underscores * Drop support for Python < 3.6, add 3.7 - 3.9 * Add possibility to reset the FakeLogger * Add missing APIs to FakeProcess, making it match Popen (LP #1373224) - Remove patch fixtures-pr36-py39.patch: * Included upstream. - Add patch handle-no-external-mock.patch: * Skip a testcase if mock is not available. - Bump required versions of pbr and testtools. - Correct URL. * Wed Jan 26 2022 Jan Engelhardt <jengelh@inai.de> - Add missing BuildRequire on python-setuptools (this was implicitly pulled in only). * Fri Mar 19 2021 Ben Greiner <code@bnavigator.de> - Add fixtures-pr36-py39.patch -- gh#testing-cabal/fixtures#46 * Drops Python 2 compatibility in favor of Python 3.9 * Also removes six (but wants to keep mock) * Mon Oct 14 2019 Matej Cepl <mcepl@suse.com> - Replace %%fdupes -s with plain %%fdupes; hardlinks are better. * Tue Dec 4 2018 Matej Cepl <mcepl@suse.com> - Remove superfluous devel dependency for noarch package * Fri Mar 31 2017 aloisio@gmx.com - Converted to single-spec * Sat Jan 14 2017 hpj@urpla.net - fix dependencies: add python-extras * Mon Jun 20 2016 dmueller@suse.com - update to 3.0.0: * Release 3.0.0 * Fixup the MonkeyPatch patch * Tweak the new tests for consistency * Update the semantics on _fixtures.MonkeyPatch * Avoid old versions of pbr - we require modern releases * Correct MockPatchMultiple example * Ignore .tox * MonkeyPatch staticmethod * Drop support for Python 3.2. It's history * Fix print in README * Add CompoundFixture * Tweak hacking docs * Fix "propagate" spelling everywhere * Missed one: propogate -> propagate * Spelling and lint fixes * Release 1.4 * Trivial pep8 fix to logger.py * FakeLogger: Mis-formatted log messages will raise Exception * Use mock in preference to unittest.mock * Add a .travis.yml * Note how to push on releases * Tue Sep 1 2015 tbechtold@suse.com - Add missing python-six Requires and BuildRequires * Fri Jul 3 2015 dmueller@suse.com - update to 1.3.1: * Clarify the intent around _setUp * Handle BaseException resource leaks as well * Remove trailing whitespace * Deal with resource leaks during setUp * Missed NEWS entry * Fine tune the mock patch * Add a new mockpatch fixture * Document where the project home and source are * Ignore built things * Tue May 5 2015 benoit.monin@gmx.fr - update to version 1.2.0: * Release 1.2.0 * Add a warnings module capture fixure * Use universal wheels - additional changes from version 1.1.0: * Release 1.1.0 and use pbr 0.11 features * Missing NEWS entry * add tox.ini file * Fixed test performance on Python 3.5 * Add NEWS for FakeLogger formatter * allow the specification of a custom log formatter - set a minimum version for python-pbr - reenable the tests via make check: python-testrepository is not needed anymore * Mon Mar 2 2015 p.drouand@gmail.com - Disable tests and python-testrepository require to avoid a build cycle * Thu Jan 8 2015 tbechtold@suse.com - update to version 1.0.0: * remote copy/paste from another project * Add support for datefmt in FakeLogger * Migrate to git and pbr - Disable parallel builds for now due to some test failures. - Update BuildRequires * Mon Sep 15 2014 tbechtold@suse.com - update to version 0.3.16: * Fixed 0.3.15 on Python 2.6 - version info is a plain tuple there. * ``FakePopen`` now supports being called under a context manager (IE: with). * ``FakeProcess`` now supports kill(). * ``FakeProcess`` wait() now supports arguments added in Python 3. * ``MonkeyPatch`` now preserves ``staticmethod`` functions. - Add python-testtools as Requires * Tue May 20 2014 dmueller@suse.com - move unittest2 to the SLE11-specific requires (not needed on python 2.7+) * Tue Apr 8 2014 dmueller@suse.com - fix license declaration * Fri Mar 7 2014 speilicke@suse.com - Fix the real issue instead * Fri Feb 14 2014 dmueller@suse.com - only run testsuite when it actually runs * Fri Feb 14 2014 speilicke@suse.com - Run testsuite * Wed Sep 4 2013 speilicke@suse.com - Update to version 0.3.14 + FakePopen can now override the returncode attribute. - Changes from version 0.3.13: + Documentation hopefully covers TestWithFixtures a little better. + FakePopen now accepts all the parameters available in Python 2.7. + FakePopen now only passes parameters to the get_info routine if the caller supplied them. + setup.py now lists the testtools dependency which was missing. * Mon Jan 14 2013 saschpe@suse.de - Initial version