diff options
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-pyfakefs.spec | 471 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 473 insertions, 0 deletions
@@ -0,0 +1 @@ +/pyfakefs-5.1.0.tar.gz diff --git a/python-pyfakefs.spec b/python-pyfakefs.spec new file mode 100644 index 0000000..b6acb0a --- /dev/null +++ b/python-pyfakefs.spec @@ -0,0 +1,471 @@ +%global _empty_manifest_terminate_build 0 +Name: python-pyfakefs +Version: 5.1.0 +Release: 1 +Summary: pyfakefs implements a fake file system that mocks the Python file system modules. +License: http://www.apache.org/licenses/LICENSE-2.0 +URL: https://github.com/pytest-dev/pyfakefs +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/38/4b/0e12c26797eeb1ea4574f3b94937817ee781a13d3fb800c2dc4c115a56f3/pyfakefs-5.1.0.tar.gz +BuildArch: noarch + + +%description +# pyfakefs [](https://badge.fury.io/py/pyfakefs) [](https://img.shields.io/pypi/pyversions/pyfakefs.svg)  [](https://pytest-pyfakefs.readthedocs.io/en/latest/?badge=latest) [](https://results.pre-commit.ci/latest/github/pytest-dev/pyfakefs/main) + + +pyfakefs implements a fake file system that mocks the Python file system modules. +Using pyfakefs, your tests operate on a fake file system in memory without +touching the real disk. The software under test requires no modification to +work with pyfakefs. + +pyfakefs acts as a `pytest` plugin by providing the `fs` fixture, which will +automatically invoke the fake filesystem. It also provides +the `fake_filesystem_unittest.TestCase` class for use with `unittest` and +the means to use the fake filesystem with other test frameworks. + +pyfakefs works with current versions of Linux, Windows and macOS. + +## Documentation + +This document provides a general overview for pyfakefs. There is more: + +* The documentation at **Read the Docs**: + * The [Release documentation](https://pytest-pyfakefs.readthedocs.io/en/stable) + contains usage documentation for pyfakefs and a description of the + most relevant classes, methods and functions for the last version + released on PyPI + * The [Development documentation](https://pytest-pyfakefs.readthedocs.io/en/latest) + contains the same documentation for the current main branch + * The [Release 3.7 documentation](https://pytest-pyfakefs.readthedocs.io/en/v3.7.2/) + contains usage documentation for the last version of pyfakefs + supporting Python 2.7 +* The [Release Notes](https://github.com/pytest-dev/pyfakefs/blob/main/CHANGES.md) + show a list of changes in the latest versions + +## Usage +The simplest method to use pyfakefs is using the `fs` fixture with `pytest`. +Refer to the +[usage documentation](https://pytest-pyfakefs.readthedocs.io/en/latest/usage.html) +for information on other test scenarios, test customization and +using convenience functions. + +## Features +Apart from automatically mocking most file-system functions, pyfakefs +provides some additional features: +- mapping files and directories from the real file system into the fake filesystem +- configuration and tracking of the file system size +- pause and resume of patching to be able to use the real file system inside a + test step +- (limited) emulation of other OSes (Linux, macOS or Windows) +- configuration to behave as if running as a non-root user while running + under root + +## Compatibility +pyfakefs works with CPython 3.7 and above, on Linux, Windows and macOS, and +with PyPy3. + +pyfakefs works with [pytest](http://doc.pytest.org) version 3.0.0 or above, +though a current version is recommended. + +pyfakefs will not work with Python libraries that use C libraries to access the +file system. This is because pyfakefs cannot patch the underlying C libraries' +file access functions--the C libraries will always access the real file +system. Refer to the +[documentation](https://pytest-pyfakefs.readthedocs.io/en/latest/intro.html#limitations) +for more information about the limitations of pyfakefs. + +## Development + +### Continuous integration + +pyfakefs is currently automatically tested on Linux, macOS and Windows, with +Python 3.7 to 3.11, and with PyPy3 on Linux, using +[GitHub Actions](https://github.com/pytest-dev/pyfakefs/actions). + +### Running pyfakefs unit tests + +#### On the command line +pyfakefs unit tests can be run using `pytest` (all tests) or `unittest` +(all tests except `pytest`-specific ones): + +```bash +$ cd pyfakefs/ +$ export PYTHONPATH=$PWD + +$ python -m pytest pyfakefs +$ python -m pyfakefs.tests.all_tests +``` + +Similar scripts are called by `tox` and Github Actions. `tox` can be used to +run tests locally against supported python versions: + +```bash +$ tox +``` + +#### In a Docker container + +The `Dockerfile` at the repository root will run the tests on the latest +Ubuntu version. Build the container: +```bash +cd pyfakefs/ +docker build -t pyfakefs . +``` +Run the unit tests in the container: +```bash +docker run -t pyfakefs +``` + +### Contributing to pyfakefs + +We always welcome contributions to the library. Check out the +[Contributing Guide](https://github.com/pytest-dev/pyfakefs/blob/main/CONTRIBUTING.md) +for more information. + +## History +pyfakefs.py was initially developed at Google by Mike Bland as a modest fake +implementation of core Python modules. It was introduced to all of Google +in September 2006. Since then, it has been enhanced to extend its +functionality and usefulness. At last count, pyfakefs was used in over 2,000 +Python tests at Google. + +Google released pyfakefs to the public in 2011 as Google Code project +[pyfakefs](http://code.google.com/p/pyfakefs/): +* Fork + [jmcgeheeiv-pyfakefs](http://code.google.com/p/jmcgeheeiv-pyfakefs/) added + [direct support for unittest and doctest](../../wiki/Automatically-find-and-patch-file-functions-and-modules) +* Fork + [shiffdane-jmcgeheeiv-pyfakefs](http://code.google.com/p/shiffdane-jmcgeheeiv-pyfakefs/) + added further corrections + +After the [shutdown of Google Code](http://google-opensource.blogspot.com/2015/03/farewell-to-google-code.html) +was announced, [John McGehee](https://github.com/jmcgeheeiv) merged all three Google Code projects together +[here on GitHub](https://github.com/pytest-dev/pyfakefs) where an enthusiastic community actively supports, maintains +and extends pyfakefs. In 2022, the repository has been transferred to +[pytest-dev](https://github.com/pytest-dev) to ensure continuous maintenance. + + +%package -n python3-pyfakefs +Summary: pyfakefs implements a fake file system that mocks the Python file system modules. +Provides: python-pyfakefs +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-pyfakefs +# pyfakefs [](https://badge.fury.io/py/pyfakefs) [](https://img.shields.io/pypi/pyversions/pyfakefs.svg)  [](https://pytest-pyfakefs.readthedocs.io/en/latest/?badge=latest) [](https://results.pre-commit.ci/latest/github/pytest-dev/pyfakefs/main) + + +pyfakefs implements a fake file system that mocks the Python file system modules. +Using pyfakefs, your tests operate on a fake file system in memory without +touching the real disk. The software under test requires no modification to +work with pyfakefs. + +pyfakefs acts as a `pytest` plugin by providing the `fs` fixture, which will +automatically invoke the fake filesystem. It also provides +the `fake_filesystem_unittest.TestCase` class for use with `unittest` and +the means to use the fake filesystem with other test frameworks. + +pyfakefs works with current versions of Linux, Windows and macOS. + +## Documentation + +This document provides a general overview for pyfakefs. There is more: + +* The documentation at **Read the Docs**: + * The [Release documentation](https://pytest-pyfakefs.readthedocs.io/en/stable) + contains usage documentation for pyfakefs and a description of the + most relevant classes, methods and functions for the last version + released on PyPI + * The [Development documentation](https://pytest-pyfakefs.readthedocs.io/en/latest) + contains the same documentation for the current main branch + * The [Release 3.7 documentation](https://pytest-pyfakefs.readthedocs.io/en/v3.7.2/) + contains usage documentation for the last version of pyfakefs + supporting Python 2.7 +* The [Release Notes](https://github.com/pytest-dev/pyfakefs/blob/main/CHANGES.md) + show a list of changes in the latest versions + +## Usage +The simplest method to use pyfakefs is using the `fs` fixture with `pytest`. +Refer to the +[usage documentation](https://pytest-pyfakefs.readthedocs.io/en/latest/usage.html) +for information on other test scenarios, test customization and +using convenience functions. + +## Features +Apart from automatically mocking most file-system functions, pyfakefs +provides some additional features: +- mapping files and directories from the real file system into the fake filesystem +- configuration and tracking of the file system size +- pause and resume of patching to be able to use the real file system inside a + test step +- (limited) emulation of other OSes (Linux, macOS or Windows) +- configuration to behave as if running as a non-root user while running + under root + +## Compatibility +pyfakefs works with CPython 3.7 and above, on Linux, Windows and macOS, and +with PyPy3. + +pyfakefs works with [pytest](http://doc.pytest.org) version 3.0.0 or above, +though a current version is recommended. + +pyfakefs will not work with Python libraries that use C libraries to access the +file system. This is because pyfakefs cannot patch the underlying C libraries' +file access functions--the C libraries will always access the real file +system. Refer to the +[documentation](https://pytest-pyfakefs.readthedocs.io/en/latest/intro.html#limitations) +for more information about the limitations of pyfakefs. + +## Development + +### Continuous integration + +pyfakefs is currently automatically tested on Linux, macOS and Windows, with +Python 3.7 to 3.11, and with PyPy3 on Linux, using +[GitHub Actions](https://github.com/pytest-dev/pyfakefs/actions). + +### Running pyfakefs unit tests + +#### On the command line +pyfakefs unit tests can be run using `pytest` (all tests) or `unittest` +(all tests except `pytest`-specific ones): + +```bash +$ cd pyfakefs/ +$ export PYTHONPATH=$PWD + +$ python -m pytest pyfakefs +$ python -m pyfakefs.tests.all_tests +``` + +Similar scripts are called by `tox` and Github Actions. `tox` can be used to +run tests locally against supported python versions: + +```bash +$ tox +``` + +#### In a Docker container + +The `Dockerfile` at the repository root will run the tests on the latest +Ubuntu version. Build the container: +```bash +cd pyfakefs/ +docker build -t pyfakefs . +``` +Run the unit tests in the container: +```bash +docker run -t pyfakefs +``` + +### Contributing to pyfakefs + +We always welcome contributions to the library. Check out the +[Contributing Guide](https://github.com/pytest-dev/pyfakefs/blob/main/CONTRIBUTING.md) +for more information. + +## History +pyfakefs.py was initially developed at Google by Mike Bland as a modest fake +implementation of core Python modules. It was introduced to all of Google +in September 2006. Since then, it has been enhanced to extend its +functionality and usefulness. At last count, pyfakefs was used in over 2,000 +Python tests at Google. + +Google released pyfakefs to the public in 2011 as Google Code project +[pyfakefs](http://code.google.com/p/pyfakefs/): +* Fork + [jmcgeheeiv-pyfakefs](http://code.google.com/p/jmcgeheeiv-pyfakefs/) added + [direct support for unittest and doctest](../../wiki/Automatically-find-and-patch-file-functions-and-modules) +* Fork + [shiffdane-jmcgeheeiv-pyfakefs](http://code.google.com/p/shiffdane-jmcgeheeiv-pyfakefs/) + added further corrections + +After the [shutdown of Google Code](http://google-opensource.blogspot.com/2015/03/farewell-to-google-code.html) +was announced, [John McGehee](https://github.com/jmcgeheeiv) merged all three Google Code projects together +[here on GitHub](https://github.com/pytest-dev/pyfakefs) where an enthusiastic community actively supports, maintains +and extends pyfakefs. In 2022, the repository has been transferred to +[pytest-dev](https://github.com/pytest-dev) to ensure continuous maintenance. + + +%package help +Summary: Development documents and examples for pyfakefs +Provides: python3-pyfakefs-doc +%description help +# pyfakefs [](https://badge.fury.io/py/pyfakefs) [](https://img.shields.io/pypi/pyversions/pyfakefs.svg)  [](https://pytest-pyfakefs.readthedocs.io/en/latest/?badge=latest) [](https://results.pre-commit.ci/latest/github/pytest-dev/pyfakefs/main) + + +pyfakefs implements a fake file system that mocks the Python file system modules. +Using pyfakefs, your tests operate on a fake file system in memory without +touching the real disk. The software under test requires no modification to +work with pyfakefs. + +pyfakefs acts as a `pytest` plugin by providing the `fs` fixture, which will +automatically invoke the fake filesystem. It also provides +the `fake_filesystem_unittest.TestCase` class for use with `unittest` and +the means to use the fake filesystem with other test frameworks. + +pyfakefs works with current versions of Linux, Windows and macOS. + +## Documentation + +This document provides a general overview for pyfakefs. There is more: + +* The documentation at **Read the Docs**: + * The [Release documentation](https://pytest-pyfakefs.readthedocs.io/en/stable) + contains usage documentation for pyfakefs and a description of the + most relevant classes, methods and functions for the last version + released on PyPI + * The [Development documentation](https://pytest-pyfakefs.readthedocs.io/en/latest) + contains the same documentation for the current main branch + * The [Release 3.7 documentation](https://pytest-pyfakefs.readthedocs.io/en/v3.7.2/) + contains usage documentation for the last version of pyfakefs + supporting Python 2.7 +* The [Release Notes](https://github.com/pytest-dev/pyfakefs/blob/main/CHANGES.md) + show a list of changes in the latest versions + +## Usage +The simplest method to use pyfakefs is using the `fs` fixture with `pytest`. +Refer to the +[usage documentation](https://pytest-pyfakefs.readthedocs.io/en/latest/usage.html) +for information on other test scenarios, test customization and +using convenience functions. + +## Features +Apart from automatically mocking most file-system functions, pyfakefs +provides some additional features: +- mapping files and directories from the real file system into the fake filesystem +- configuration and tracking of the file system size +- pause and resume of patching to be able to use the real file system inside a + test step +- (limited) emulation of other OSes (Linux, macOS or Windows) +- configuration to behave as if running as a non-root user while running + under root + +## Compatibility +pyfakefs works with CPython 3.7 and above, on Linux, Windows and macOS, and +with PyPy3. + +pyfakefs works with [pytest](http://doc.pytest.org) version 3.0.0 or above, +though a current version is recommended. + +pyfakefs will not work with Python libraries that use C libraries to access the +file system. This is because pyfakefs cannot patch the underlying C libraries' +file access functions--the C libraries will always access the real file +system. Refer to the +[documentation](https://pytest-pyfakefs.readthedocs.io/en/latest/intro.html#limitations) +for more information about the limitations of pyfakefs. + +## Development + +### Continuous integration + +pyfakefs is currently automatically tested on Linux, macOS and Windows, with +Python 3.7 to 3.11, and with PyPy3 on Linux, using +[GitHub Actions](https://github.com/pytest-dev/pyfakefs/actions). + +### Running pyfakefs unit tests + +#### On the command line +pyfakefs unit tests can be run using `pytest` (all tests) or `unittest` +(all tests except `pytest`-specific ones): + +```bash +$ cd pyfakefs/ +$ export PYTHONPATH=$PWD + +$ python -m pytest pyfakefs +$ python -m pyfakefs.tests.all_tests +``` + +Similar scripts are called by `tox` and Github Actions. `tox` can be used to +run tests locally against supported python versions: + +```bash +$ tox +``` + +#### In a Docker container + +The `Dockerfile` at the repository root will run the tests on the latest +Ubuntu version. Build the container: +```bash +cd pyfakefs/ +docker build -t pyfakefs . +``` +Run the unit tests in the container: +```bash +docker run -t pyfakefs +``` + +### Contributing to pyfakefs + +We always welcome contributions to the library. Check out the +[Contributing Guide](https://github.com/pytest-dev/pyfakefs/blob/main/CONTRIBUTING.md) +for more information. + +## History +pyfakefs.py was initially developed at Google by Mike Bland as a modest fake +implementation of core Python modules. It was introduced to all of Google +in September 2006. Since then, it has been enhanced to extend its +functionality and usefulness. At last count, pyfakefs was used in over 2,000 +Python tests at Google. + +Google released pyfakefs to the public in 2011 as Google Code project +[pyfakefs](http://code.google.com/p/pyfakefs/): +* Fork + [jmcgeheeiv-pyfakefs](http://code.google.com/p/jmcgeheeiv-pyfakefs/) added + [direct support for unittest and doctest](../../wiki/Automatically-find-and-patch-file-functions-and-modules) +* Fork + [shiffdane-jmcgeheeiv-pyfakefs](http://code.google.com/p/shiffdane-jmcgeheeiv-pyfakefs/) + added further corrections + +After the [shutdown of Google Code](http://google-opensource.blogspot.com/2015/03/farewell-to-google-code.html) +was announced, [John McGehee](https://github.com/jmcgeheeiv) merged all three Google Code projects together +[here on GitHub](https://github.com/pytest-dev/pyfakefs) where an enthusiastic community actively supports, maintains +and extends pyfakefs. In 2022, the repository has been transferred to +[pytest-dev](https://github.com/pytest-dev) to ensure continuous maintenance. + + +%prep +%autosetup -n pyfakefs-5.1.0 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-pyfakefs -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Thu Mar 09 2023 Python_Bot <Python_Bot@openeuler.org> - 5.1.0-1 +- Package Spec generated @@ -0,0 +1 @@ +a3622699379b71e315a101fe362560f3 pyfakefs-5.1.0.tar.gz |