Bug#1014562: ITP: pook -- HTTP traffic mocking and testing made easy
Package: wnpp
Severity: wishlist
Owner: Guilherme de Paula Xavier Segundo <guilherme.lnx@gmail.com>
X-Debbugs-Cc: debian-devel@lists.debian.org, guilherme.lnx@gmail.com
* Package name : pook
Version : 1.0.2
Upstream Author : Tomas Aparicio <tomas@aparicio.me>
* URL : https://github.com/h2non/pook
* License : Expat
Programming Lang: Python
Description : HTTP traffic mocking and testing made easy
Versatile, expressive and hackable utility library for HTTP traffic mocking
and expectations made easy in Python. Heavily inspired by gock.
Features:
- Simple, expressive and fluent API.
- Provides both Pythonic and chainable DSL API styles.
- Full-featured HTTP response definitions and expectations.
- Matches any HTTP protocol primitive (URL, method, query params, headers, body...).
- Full regular expressions capable mock expectations matching.
- Supports most popular HTTP clients via interceptor adapters.
- Configurable volatile, persistent or TTL limited mocks.
- Works with any testing framework/engine (unittest, pytest, nosetests...).
- First-class JSON & XML support matching and responses.
- Supports JSON Schema body matching.
- Works in both runtime and testing environments.
- Can be used as decorator and/or via context managers.
- Supports real networking mode with optional traffic filtering.
- Map/filter mocks easily for generic or custom mock expectations.
- Custom user-defined mock matcher functions.
- Simulated raised error exceptions.
- Network delay simulation (only available for aiohttp).
- Pluggable and hackable API.
- Customizable HTTP traffic mock interceptor engine.
- Supports third-party mocking engines, such as mocket.
- Fits good for painless test doubles.
- Does not support WebSocket traffic mocking.
- Works with Python +2.7 and +3.0 (including PyPy).
- Dependency-less: just 2 small dependencies for JSONSchema and XML tree comparison.
My intent is to package this software under the umbrella of the Debian
Python team.
Thanks,
Guilherme Xavier
Reply to: