%global _empty_manifest_terminate_build 0 Name: python-examples Version: 1.0.2 Release: 1 Summary: Tests and Documentation Done by Example. License: MIT URL: https://pypi.org/project/examples/ Source0: https://mirrors.aliyun.com/pypi/web/packages/08/1a/1a68ca1db40e06efdd016fcc59863f755f1bceb12b9a7551f52f90fd3253/examples-1.0.2.tar.gz BuildArch: noarch Requires: python3-pydantic %description [![eXamples - Python Tests and Documentation Done by Example.](https://raw.github.com/timothycrosley/examples/master/art/logo_large.png)](https://timothycrosley.github.io/examples/) _________________ [![PyPI version](https://badge.fury.io/py/examples.svg)](http://badge.fury.io/py/examples) [![Build Status](https://travis-ci.org/timothycrosley/examples.svg?branch=master)](https://travis-ci.org/timothycrosley/examples) [![codecov](https://codecov.io/gh/timothycrosley/examples/branch/master/graph/badge.svg)](https://codecov.io/gh/timothycrosley/examples) [![Join the chat at https://gitter.im/timothycrosley/examples](https://badges.gitter.im/timothycrosley/examples.svg)](https://gitter.im/timothycrosley/examples?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [![License](https://img.shields.io/github/license/mashape/apistatus.svg)](https://pypi.python.org/pypi/examples/) [![Downloads](https://pepy.tech/badge/examples)](https://pepy.tech/project/examples) _________________ [Read Latest Documentation](https://timothycrosley.github.io/examples/) - [Browse GitHub Code Repository](https://github.com/timothycrosley/examples/) _________________ **eXamples** (AKA: xamples for SEO) is a Python3 library enabling interactable, self-documenting, and self-verifying examples. These examples are attached directly to Python functions using decorators or via separate `MODULE_examples.py` source files. [![Example Usage Gif](https://raw.githubusercontent.com/timothycrosley/examples/master/art/example.gif)](https://raw.githubusercontent.com/timothycrosley/examples/master/art/example.gif) Key Features: * **Simple and Obvious API**: Add `@examples.example(*args, **kwargs)` decorators for each example you want to add to a function. * **Auto Documenting**: Examples, by default, get added to your functions docstring viewable both in interactive interpreters and when using [portray](https://timothycrosley.github.io/portray/) or [pdocs](https://timothycrosley.github.io/pdocs/). * **Signature Validating**: All examples can easily be checked to ensure they match the function signature (and type annotations!) with a single call (`examples.verify_all_signatures()`). * **Act as Tests**: Examples act as additional test cases, that can easily be verified using a single test case in your favorite test runner: (`examples.test_all_examples()`). * **Async Compatibility**: Examples can be attached and tested as easily against async functions as non-async ones. What's Missing: * **Class Support**: Currently examples can only be attached to individual functions. Class and method support is planned for a future release. ## Quick Start The following guides should get you up and running using eXamples in no time. 1. [Installation](https://timothycrosley.github.io/examples/docs/quick_start/1.-installation/) - TL;DR: Run `pip3 install examples` within your projects virtual environment. 2. [Adding Examples](https://timothycrosley.github.io/examples/docs/quick_start/2.-adding-examples/) - TL;DR: Add example decorators that represent each of your examples: # my_module_with_examples.py from examples import example @example(1, number_2=1, _example_returns=2) def add(number_1: int, number_2: int) -> int: return number_1 + number_2 3. [Verify and Test Examples](https://timothycrosley.github.io/examples/docs/quick_start/3.-testing-examples/) - TL;DR: run `examples.verify_and_test_examples` within your projects test cases. # test_my_module_with_examples.py from examples import verify_and_test_examples import my_module_with_examples def test_examples_verifying_signature(): verify_and_test_examples(my_module_with_examples) 4. Introspect Examples - import examples from my_module_with_examples import add examples.get_examples(add)[0].use() == 2 ## Why Create Examples? I've always wanted a way to attach examples to functions in a way that would be re-useable for documentation, testing, and API proposes. Just like moving Python parameter types from comments into type annotations has made them more broadly useful, I hope examples can do the same for example calls. I hope you too find `eXamples` useful! ~Timothy Crosley %package -n python3-examples Summary: Tests and Documentation Done by Example. Provides: python-examples BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip %description -n python3-examples [![eXamples - Python Tests and Documentation Done by Example.](https://raw.github.com/timothycrosley/examples/master/art/logo_large.png)](https://timothycrosley.github.io/examples/) _________________ [![PyPI version](https://badge.fury.io/py/examples.svg)](http://badge.fury.io/py/examples) [![Build Status](https://travis-ci.org/timothycrosley/examples.svg?branch=master)](https://travis-ci.org/timothycrosley/examples) [![codecov](https://codecov.io/gh/timothycrosley/examples/branch/master/graph/badge.svg)](https://codecov.io/gh/timothycrosley/examples) [![Join the chat at https://gitter.im/timothycrosley/examples](https://badges.gitter.im/timothycrosley/examples.svg)](https://gitter.im/timothycrosley/examples?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [![License](https://img.shields.io/github/license/mashape/apistatus.svg)](https://pypi.python.org/pypi/examples/) [![Downloads](https://pepy.tech/badge/examples)](https://pepy.tech/project/examples) _________________ [Read Latest Documentation](https://timothycrosley.github.io/examples/) - [Browse GitHub Code Repository](https://github.com/timothycrosley/examples/) _________________ **eXamples** (AKA: xamples for SEO) is a Python3 library enabling interactable, self-documenting, and self-verifying examples. These examples are attached directly to Python functions using decorators or via separate `MODULE_examples.py` source files. [![Example Usage Gif](https://raw.githubusercontent.com/timothycrosley/examples/master/art/example.gif)](https://raw.githubusercontent.com/timothycrosley/examples/master/art/example.gif) Key Features: * **Simple and Obvious API**: Add `@examples.example(*args, **kwargs)` decorators for each example you want to add to a function. * **Auto Documenting**: Examples, by default, get added to your functions docstring viewable both in interactive interpreters and when using [portray](https://timothycrosley.github.io/portray/) or [pdocs](https://timothycrosley.github.io/pdocs/). * **Signature Validating**: All examples can easily be checked to ensure they match the function signature (and type annotations!) with a single call (`examples.verify_all_signatures()`). * **Act as Tests**: Examples act as additional test cases, that can easily be verified using a single test case in your favorite test runner: (`examples.test_all_examples()`). * **Async Compatibility**: Examples can be attached and tested as easily against async functions as non-async ones. What's Missing: * **Class Support**: Currently examples can only be attached to individual functions. Class and method support is planned for a future release. ## Quick Start The following guides should get you up and running using eXamples in no time. 1. [Installation](https://timothycrosley.github.io/examples/docs/quick_start/1.-installation/) - TL;DR: Run `pip3 install examples` within your projects virtual environment. 2. [Adding Examples](https://timothycrosley.github.io/examples/docs/quick_start/2.-adding-examples/) - TL;DR: Add example decorators that represent each of your examples: # my_module_with_examples.py from examples import example @example(1, number_2=1, _example_returns=2) def add(number_1: int, number_2: int) -> int: return number_1 + number_2 3. [Verify and Test Examples](https://timothycrosley.github.io/examples/docs/quick_start/3.-testing-examples/) - TL;DR: run `examples.verify_and_test_examples` within your projects test cases. # test_my_module_with_examples.py from examples import verify_and_test_examples import my_module_with_examples def test_examples_verifying_signature(): verify_and_test_examples(my_module_with_examples) 4. Introspect Examples - import examples from my_module_with_examples import add examples.get_examples(add)[0].use() == 2 ## Why Create Examples? I've always wanted a way to attach examples to functions in a way that would be re-useable for documentation, testing, and API proposes. Just like moving Python parameter types from comments into type annotations has made them more broadly useful, I hope examples can do the same for example calls. I hope you too find `eXamples` useful! ~Timothy Crosley %package help Summary: Development documents and examples for examples Provides: python3-examples-doc %description help [![eXamples - Python Tests and Documentation Done by Example.](https://raw.github.com/timothycrosley/examples/master/art/logo_large.png)](https://timothycrosley.github.io/examples/) _________________ [![PyPI version](https://badge.fury.io/py/examples.svg)](http://badge.fury.io/py/examples) [![Build Status](https://travis-ci.org/timothycrosley/examples.svg?branch=master)](https://travis-ci.org/timothycrosley/examples) [![codecov](https://codecov.io/gh/timothycrosley/examples/branch/master/graph/badge.svg)](https://codecov.io/gh/timothycrosley/examples) [![Join the chat at https://gitter.im/timothycrosley/examples](https://badges.gitter.im/timothycrosley/examples.svg)](https://gitter.im/timothycrosley/examples?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [![License](https://img.shields.io/github/license/mashape/apistatus.svg)](https://pypi.python.org/pypi/examples/) [![Downloads](https://pepy.tech/badge/examples)](https://pepy.tech/project/examples) _________________ [Read Latest Documentation](https://timothycrosley.github.io/examples/) - [Browse GitHub Code Repository](https://github.com/timothycrosley/examples/) _________________ **eXamples** (AKA: xamples for SEO) is a Python3 library enabling interactable, self-documenting, and self-verifying examples. These examples are attached directly to Python functions using decorators or via separate `MODULE_examples.py` source files. [![Example Usage Gif](https://raw.githubusercontent.com/timothycrosley/examples/master/art/example.gif)](https://raw.githubusercontent.com/timothycrosley/examples/master/art/example.gif) Key Features: * **Simple and Obvious API**: Add `@examples.example(*args, **kwargs)` decorators for each example you want to add to a function. * **Auto Documenting**: Examples, by default, get added to your functions docstring viewable both in interactive interpreters and when using [portray](https://timothycrosley.github.io/portray/) or [pdocs](https://timothycrosley.github.io/pdocs/). * **Signature Validating**: All examples can easily be checked to ensure they match the function signature (and type annotations!) with a single call (`examples.verify_all_signatures()`). * **Act as Tests**: Examples act as additional test cases, that can easily be verified using a single test case in your favorite test runner: (`examples.test_all_examples()`). * **Async Compatibility**: Examples can be attached and tested as easily against async functions as non-async ones. What's Missing: * **Class Support**: Currently examples can only be attached to individual functions. Class and method support is planned for a future release. ## Quick Start The following guides should get you up and running using eXamples in no time. 1. [Installation](https://timothycrosley.github.io/examples/docs/quick_start/1.-installation/) - TL;DR: Run `pip3 install examples` within your projects virtual environment. 2. [Adding Examples](https://timothycrosley.github.io/examples/docs/quick_start/2.-adding-examples/) - TL;DR: Add example decorators that represent each of your examples: # my_module_with_examples.py from examples import example @example(1, number_2=1, _example_returns=2) def add(number_1: int, number_2: int) -> int: return number_1 + number_2 3. [Verify and Test Examples](https://timothycrosley.github.io/examples/docs/quick_start/3.-testing-examples/) - TL;DR: run `examples.verify_and_test_examples` within your projects test cases. # test_my_module_with_examples.py from examples import verify_and_test_examples import my_module_with_examples def test_examples_verifying_signature(): verify_and_test_examples(my_module_with_examples) 4. Introspect Examples - import examples from my_module_with_examples import add examples.get_examples(add)[0].use() == 2 ## Why Create Examples? I've always wanted a way to attach examples to functions in a way that would be re-useable for documentation, testing, and API proposes. Just like moving Python parameter types from comments into type annotations has made them more broadly useful, I hope examples can do the same for example calls. I hope you too find `eXamples` useful! ~Timothy Crosley %prep %autosetup -n examples-1.0.2 %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-examples -f filelist.lst %dir %{python3_sitelib}/* %files help -f doclist.lst %{_docdir}/* %changelog * Thu Jun 08 2023 Python_Bot - 1.0.2-1 - Package Spec generated