gnu: Add python-pytest-examples.

* gnu/packages/check.scm (python-pytest-examples): New variable.

Change-Id: I8199a7d7294c3b04134474f9f116468ac327cba8
This commit is contained in:
Sharlatan Hellseher 2024-03-18 14:46:33 +00:00
parent 0fd36bed26
commit 90b636e4b3
No known key found for this signature in database
GPG Key ID: 76D727BFF62CD2B5

View File

@ -1399,6 +1399,78 @@ supports coverage of subprocesses.")
from a .env file before running tests.")
(license license:expat)))
(define-public python-pytest-examples
(package
(name "python-pytest-examples")
(version "0.0.10")
(source
(origin
;; No tests in the PyPI tarball.
(method git-fetch)
(uri (git-reference
(url "https://github.com/pydantic/pytest-examples")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0lwxgyfj6lnkhmrvb6kzfskpwfz70kxnhnjvyl3l65k568c4wb4c"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
#~(list "-k"
(string-append
;; Disable tests requiring pthon-ruff.
"not test_ruff"
" and not test_ruff_config"
" and not test_ruff_offset"
" and not test_ruff_ok"
" and not test_ruff_error"
" and not test_update_files"
" and not test_cases_update[simple.md]"
" and not test_cases_update[dataclass_indent.md]"
" and not test_cases_update[long_python_lines.py]"
" and not test_cases_update[simple.py]"
" and not test_cases_update[python_class.py]"
" and not test_cases_update[call_twice.md]"
" and not test_insert_print[example/README.md:3-33]"
" and not test_insert_print[example/README.md:37-40]"
" and not test_insert_print[example/README.md:44-47]"
" and not test_insert_print[example/README.md:49-66]"
" and not test_python_self[example/test_example.py:28-31]"
" and not test_python_self[example/test_example.py:40-43]"
" and not test_python_self_change_docstyle[example/test_example.py:28-31]"
" and not test_python_self_change_docstyle[example/test_example.py:40-43]"))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'relax-requirements
(lambda _
(substitute* "pyproject.toml"
;; XXX: Removing ruff from required packages to pass Sanity
;; check, add it back when it's available.
(("'ruff>=0.0.258',") "")
;; black>=23
((">=23") ">22")))))))
(propagated-inputs
;; TODO: Add python-ruff once it has been packaged.
(list python-black python-pytest))
(native-inputs
(list python-hatchling))
(home-page "https://pypi.org/project/pytest-examples/")
(synopsis "Pytest plugin for testing examples in docstrings and markdown files")
(description
"Pytest-examples provides functionality for testing Python code examples
in docstrings and markdown files, with its main features being:
@itemize
@item lint code examples using ruff and black
@item run code examples
@item run code examples and check print statements are inlined correctly in
the code
@item It can also update code examples in place to format them and insert or
update print statements
@end itemize")
(license license:expat)))
(define-public python-pytest-httpserver
(package
(name "python-pytest-httpserver")