summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2023-04-11 19:32:35 +0000
committerCoprDistGit <infra@openeuler.org>2023-04-11 19:32:35 +0000
commitdc69d17456ad98c6576c21a7113fea9862614046 (patch)
tree76d3a9f21d6d8fa3f6e4504741b73ce08a0cf914
parent747451766b9bc06762d2c6ea2a0a889e652cd79f (diff)
automatic import of python-pytest-cookies
-rw-r--r--.gitignore1
-rw-r--r--python-pytest-cookies.spec485
-rw-r--r--sources1
3 files changed, 487 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..76eab70 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/pytest-cookies-0.7.0.tar.gz
diff --git a/python-pytest-cookies.spec b/python-pytest-cookies.spec
new file mode 100644
index 0000000..68282fa
--- /dev/null
+++ b/python-pytest-cookies.spec
@@ -0,0 +1,485 @@
+%global _empty_manifest_terminate_build 0
+Name: python-pytest-cookies
+Version: 0.7.0
+Release: 1
+Summary: The pytest plugin for your Cookiecutter templates. 🍪
+License: MIT
+URL: https://github.com/hackebrot/pytest-cookies
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/18/2e/11a3e1abb4bbf10e0af3f194ba4c55600de3fe52417ef3594c18d28ecdbe/pytest-cookies-0.7.0.tar.gz
+BuildArch: noarch
+
+Requires: python3-cookiecutter
+Requires: python3-pytest
+
+%description
+# pytest-cookies
+
+[pytest][pytest] is a mature testing framework for Python that is developed
+by a thriving and ever-growing community of volunteers. It uses plain assert
+statements and regular Python comparisons. At the core of the pytest test
+framework is a powerful hook-based plugin system.
+
+**pytest-cookies** is a pytest plugin that comes with a ``cookies`` fixture
+which is a wrapper for the [cookiecutter][cookiecutter] API for generating
+projects. It helps you verify that your template is working as expected and
+takes care of cleaning up after running the tests. 🍪
+
+# Installation
+
+**pytest-cookies** is available for download from [PyPI][pypi] via [pip][pip]:
+
+```text
+pip install pytest-cookies
+```
+This will automatically install [pytest][pytest] and
+[cookiecutter][cookiecutter].
+
+# Usage
+
+## Generate a new project
+
+The ``cookies.bake()`` method generates a new project from your template
+based on the default values specified in ``cookiecutter.json``:
+
+```python
+def test_bake_project(cookies):
+ result = cookies.bake(extra_context={"repo_name": "helloworld"})
+
+ assert result.exit_code == 0
+ assert result.exception is None
+
+ assert result.project_path.name == "helloworld"
+ assert result.project_path.is_dir()
+
+ # The `project` attribute is deprecated
+ assert result.project.basename == "helloworld"
+ assert result.project.isdir()
+```
+
+**Please note that the `project` attribute of the returned `Result` class is
+deprecated and will be removed in a future release, please use `project_path`
+instead.**
+
+The ``cookies.bake()`` method also accepts the ``extra_context`` keyword
+argument that will be passed to cookiecutter. The given dictionary will
+override the default values of the template context, effectively allowing you
+to test arbitrary user input data.
+
+For more information on injecting extra context, please check out the
+[cookiecutter documentation][extra-context].
+
+## Specify the template directory
+
+By default ``cookies.bake()`` looks for a cookiecutter template in the
+current directory. This can be overridden on the command line by passing a
+``--template`` parameter to pytest:
+
+```text
+pytest --template TEMPLATE
+```
+
+You can customize the cookiecutter template directory from a test by passing
+in the optional ``template`` paramter:
+
+```python
+@pytest.fixture
+def custom_template(tmpdir):
+ template = tmpdir.ensure("cookiecutter-template", dir=True)
+ template.join("cookiecutter.json").write('{"repo_name": "example-project"}')
+
+ repo_dir = template.ensure("{{cookiecutter.repo_name}}", dir=True)
+ repo_dir.join("README.rst").write("{{cookiecutter.repo_name}}")
+
+ return template
+
+
+def test_bake_custom_project(cookies, custom_template):
+ """Test for 'cookiecutter-template'."""
+ result = cookies.bake(template=str(custom_template))
+
+ assert result.exit_code == 0
+ assert result.exception is None
+
+ assert result.project_path.name == "example-project"
+ assert result.project_path.is_dir()
+```
+
+## Keep output directories for debugging
+
+By default ``cookies`` removes baked projects.
+
+However, you can pass the ``keep-baked-projects`` flag if you'd like to keep
+them ([it won't clutter][temporary-directories] as pytest only keeps the
+three newest temporary directories):
+
+```text
+pytest --keep-baked-projects
+```
+
+# Community
+
+Contributions are very welcome! If you encounter any problems, please [file
+an issue][new-issue] along with a detailed description. Tests can be run with
+[tox][tox]. Please make sure all of the tests are green before you submit a
+pull request.
+
+You can also support the development of this project by volunteering to
+become a maintainer, which means you will be able to triage issues, merge
+pull-requests, and publish new releases. If you're interested, please submit
+a pull-request to add yourself to the list of [maintainers][community] and
+we'll get you started! 🍪
+
+Please note that **pytest-cookies** is released with a [Contributor Code of
+Conduct][code-of-conduct]. By participating in this project you agree to
+abide by its terms.
+
+# License
+
+Distributed under the terms of the [MIT license][license], **pytest-cookies**
+is free and open source software.
+
+[cookiecutter]: https://github.com/audreyr/cookiecutter
+[pytest]: https://github.com/pytest-dev/pytest
+[pip]: https://pypi.org/project/pip/
+[pypi]: https://pypi.org/project/pytest-cookies/
+[extra-context]: https://cookiecutter.readthedocs.io/en/latest/advanced/injecting_context.html
+[temporary-directories]: https://docs.pytest.org/en/latest/tmpdir.html#the-default-base-temporary-directory
+[tox]: https://pypi.org/project/tox/
+[new-issue]: https://github.com/hackebrot/pytest-cookies/issues
+[code-of-conduct]: https://github.com/hackebrot/pytest-cookies/blob/main/CODE_OF_CONDUCT.md
+[community]: https://github.com/hackebrot/pytest-cookies/blob/main/COMMUNITY.md
+[license]: https://github.com/hackebrot/pytest-cookies/blob/main/LICENSE
+
+
+%package -n python3-pytest-cookies
+Summary: The pytest plugin for your Cookiecutter templates. 🍪
+Provides: python-pytest-cookies
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-pytest-cookies
+# pytest-cookies
+
+[pytest][pytest] is a mature testing framework for Python that is developed
+by a thriving and ever-growing community of volunteers. It uses plain assert
+statements and regular Python comparisons. At the core of the pytest test
+framework is a powerful hook-based plugin system.
+
+**pytest-cookies** is a pytest plugin that comes with a ``cookies`` fixture
+which is a wrapper for the [cookiecutter][cookiecutter] API for generating
+projects. It helps you verify that your template is working as expected and
+takes care of cleaning up after running the tests. 🍪
+
+# Installation
+
+**pytest-cookies** is available for download from [PyPI][pypi] via [pip][pip]:
+
+```text
+pip install pytest-cookies
+```
+This will automatically install [pytest][pytest] and
+[cookiecutter][cookiecutter].
+
+# Usage
+
+## Generate a new project
+
+The ``cookies.bake()`` method generates a new project from your template
+based on the default values specified in ``cookiecutter.json``:
+
+```python
+def test_bake_project(cookies):
+ result = cookies.bake(extra_context={"repo_name": "helloworld"})
+
+ assert result.exit_code == 0
+ assert result.exception is None
+
+ assert result.project_path.name == "helloworld"
+ assert result.project_path.is_dir()
+
+ # The `project` attribute is deprecated
+ assert result.project.basename == "helloworld"
+ assert result.project.isdir()
+```
+
+**Please note that the `project` attribute of the returned `Result` class is
+deprecated and will be removed in a future release, please use `project_path`
+instead.**
+
+The ``cookies.bake()`` method also accepts the ``extra_context`` keyword
+argument that will be passed to cookiecutter. The given dictionary will
+override the default values of the template context, effectively allowing you
+to test arbitrary user input data.
+
+For more information on injecting extra context, please check out the
+[cookiecutter documentation][extra-context].
+
+## Specify the template directory
+
+By default ``cookies.bake()`` looks for a cookiecutter template in the
+current directory. This can be overridden on the command line by passing a
+``--template`` parameter to pytest:
+
+```text
+pytest --template TEMPLATE
+```
+
+You can customize the cookiecutter template directory from a test by passing
+in the optional ``template`` paramter:
+
+```python
+@pytest.fixture
+def custom_template(tmpdir):
+ template = tmpdir.ensure("cookiecutter-template", dir=True)
+ template.join("cookiecutter.json").write('{"repo_name": "example-project"}')
+
+ repo_dir = template.ensure("{{cookiecutter.repo_name}}", dir=True)
+ repo_dir.join("README.rst").write("{{cookiecutter.repo_name}}")
+
+ return template
+
+
+def test_bake_custom_project(cookies, custom_template):
+ """Test for 'cookiecutter-template'."""
+ result = cookies.bake(template=str(custom_template))
+
+ assert result.exit_code == 0
+ assert result.exception is None
+
+ assert result.project_path.name == "example-project"
+ assert result.project_path.is_dir()
+```
+
+## Keep output directories for debugging
+
+By default ``cookies`` removes baked projects.
+
+However, you can pass the ``keep-baked-projects`` flag if you'd like to keep
+them ([it won't clutter][temporary-directories] as pytest only keeps the
+three newest temporary directories):
+
+```text
+pytest --keep-baked-projects
+```
+
+# Community
+
+Contributions are very welcome! If you encounter any problems, please [file
+an issue][new-issue] along with a detailed description. Tests can be run with
+[tox][tox]. Please make sure all of the tests are green before you submit a
+pull request.
+
+You can also support the development of this project by volunteering to
+become a maintainer, which means you will be able to triage issues, merge
+pull-requests, and publish new releases. If you're interested, please submit
+a pull-request to add yourself to the list of [maintainers][community] and
+we'll get you started! 🍪
+
+Please note that **pytest-cookies** is released with a [Contributor Code of
+Conduct][code-of-conduct]. By participating in this project you agree to
+abide by its terms.
+
+# License
+
+Distributed under the terms of the [MIT license][license], **pytest-cookies**
+is free and open source software.
+
+[cookiecutter]: https://github.com/audreyr/cookiecutter
+[pytest]: https://github.com/pytest-dev/pytest
+[pip]: https://pypi.org/project/pip/
+[pypi]: https://pypi.org/project/pytest-cookies/
+[extra-context]: https://cookiecutter.readthedocs.io/en/latest/advanced/injecting_context.html
+[temporary-directories]: https://docs.pytest.org/en/latest/tmpdir.html#the-default-base-temporary-directory
+[tox]: https://pypi.org/project/tox/
+[new-issue]: https://github.com/hackebrot/pytest-cookies/issues
+[code-of-conduct]: https://github.com/hackebrot/pytest-cookies/blob/main/CODE_OF_CONDUCT.md
+[community]: https://github.com/hackebrot/pytest-cookies/blob/main/COMMUNITY.md
+[license]: https://github.com/hackebrot/pytest-cookies/blob/main/LICENSE
+
+
+%package help
+Summary: Development documents and examples for pytest-cookies
+Provides: python3-pytest-cookies-doc
+%description help
+# pytest-cookies
+
+[pytest][pytest] is a mature testing framework for Python that is developed
+by a thriving and ever-growing community of volunteers. It uses plain assert
+statements and regular Python comparisons. At the core of the pytest test
+framework is a powerful hook-based plugin system.
+
+**pytest-cookies** is a pytest plugin that comes with a ``cookies`` fixture
+which is a wrapper for the [cookiecutter][cookiecutter] API for generating
+projects. It helps you verify that your template is working as expected and
+takes care of cleaning up after running the tests. 🍪
+
+# Installation
+
+**pytest-cookies** is available for download from [PyPI][pypi] via [pip][pip]:
+
+```text
+pip install pytest-cookies
+```
+This will automatically install [pytest][pytest] and
+[cookiecutter][cookiecutter].
+
+# Usage
+
+## Generate a new project
+
+The ``cookies.bake()`` method generates a new project from your template
+based on the default values specified in ``cookiecutter.json``:
+
+```python
+def test_bake_project(cookies):
+ result = cookies.bake(extra_context={"repo_name": "helloworld"})
+
+ assert result.exit_code == 0
+ assert result.exception is None
+
+ assert result.project_path.name == "helloworld"
+ assert result.project_path.is_dir()
+
+ # The `project` attribute is deprecated
+ assert result.project.basename == "helloworld"
+ assert result.project.isdir()
+```
+
+**Please note that the `project` attribute of the returned `Result` class is
+deprecated and will be removed in a future release, please use `project_path`
+instead.**
+
+The ``cookies.bake()`` method also accepts the ``extra_context`` keyword
+argument that will be passed to cookiecutter. The given dictionary will
+override the default values of the template context, effectively allowing you
+to test arbitrary user input data.
+
+For more information on injecting extra context, please check out the
+[cookiecutter documentation][extra-context].
+
+## Specify the template directory
+
+By default ``cookies.bake()`` looks for a cookiecutter template in the
+current directory. This can be overridden on the command line by passing a
+``--template`` parameter to pytest:
+
+```text
+pytest --template TEMPLATE
+```
+
+You can customize the cookiecutter template directory from a test by passing
+in the optional ``template`` paramter:
+
+```python
+@pytest.fixture
+def custom_template(tmpdir):
+ template = tmpdir.ensure("cookiecutter-template", dir=True)
+ template.join("cookiecutter.json").write('{"repo_name": "example-project"}')
+
+ repo_dir = template.ensure("{{cookiecutter.repo_name}}", dir=True)
+ repo_dir.join("README.rst").write("{{cookiecutter.repo_name}}")
+
+ return template
+
+
+def test_bake_custom_project(cookies, custom_template):
+ """Test for 'cookiecutter-template'."""
+ result = cookies.bake(template=str(custom_template))
+
+ assert result.exit_code == 0
+ assert result.exception is None
+
+ assert result.project_path.name == "example-project"
+ assert result.project_path.is_dir()
+```
+
+## Keep output directories for debugging
+
+By default ``cookies`` removes baked projects.
+
+However, you can pass the ``keep-baked-projects`` flag if you'd like to keep
+them ([it won't clutter][temporary-directories] as pytest only keeps the
+three newest temporary directories):
+
+```text
+pytest --keep-baked-projects
+```
+
+# Community
+
+Contributions are very welcome! If you encounter any problems, please [file
+an issue][new-issue] along with a detailed description. Tests can be run with
+[tox][tox]. Please make sure all of the tests are green before you submit a
+pull request.
+
+You can also support the development of this project by volunteering to
+become a maintainer, which means you will be able to triage issues, merge
+pull-requests, and publish new releases. If you're interested, please submit
+a pull-request to add yourself to the list of [maintainers][community] and
+we'll get you started! 🍪
+
+Please note that **pytest-cookies** is released with a [Contributor Code of
+Conduct][code-of-conduct]. By participating in this project you agree to
+abide by its terms.
+
+# License
+
+Distributed under the terms of the [MIT license][license], **pytest-cookies**
+is free and open source software.
+
+[cookiecutter]: https://github.com/audreyr/cookiecutter
+[pytest]: https://github.com/pytest-dev/pytest
+[pip]: https://pypi.org/project/pip/
+[pypi]: https://pypi.org/project/pytest-cookies/
+[extra-context]: https://cookiecutter.readthedocs.io/en/latest/advanced/injecting_context.html
+[temporary-directories]: https://docs.pytest.org/en/latest/tmpdir.html#the-default-base-temporary-directory
+[tox]: https://pypi.org/project/tox/
+[new-issue]: https://github.com/hackebrot/pytest-cookies/issues
+[code-of-conduct]: https://github.com/hackebrot/pytest-cookies/blob/main/CODE_OF_CONDUCT.md
+[community]: https://github.com/hackebrot/pytest-cookies/blob/main/COMMUNITY.md
+[license]: https://github.com/hackebrot/pytest-cookies/blob/main/LICENSE
+
+
+%prep
+%autosetup -n pytest-cookies-0.7.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-pytest-cookies -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Tue Apr 11 2023 Python_Bot <Python_Bot@openeuler.org> - 0.7.0-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..05e054c
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+3cbc01e9b5dafa1299b85e8660167810 pytest-cookies-0.7.0.tar.gz