Readability Matters
Project description
Baby Steps
BDD steps for test markup. Just for readability.
Installation
pip3 install baby-steps
Usage
import httpx
from baby_steps import given, when, then
def test_status_code():
with given:
code = 200
with when:
resp = httpx.get(f"https://httpbin.org/status/{code}")
with then:
assert resp.status_code == code
Named Steps
import httpx
from baby_steps import given, when, then
def test_status_code():
with given("status code"):
code = 200
with when("user requests a resource"):
resp = httpx.get(f"https://httpbin.org/status/{code}")
with then("it should return expected status code"):
assert resp.status_code == code
Hooks
from baby_steps import given, then, when
from baby_steps.hooks import add_hook
def test():
with given("status code"):
pass
with when("user requests a resource"):
pass
with then("it should return expected status code"):
pass
def hook(step, name):
print(step, name)
add_hook(hook)
test()
# <class 'baby_steps.Given'> 'status code'
# <class 'baby_steps.When'> 'user requests a resource'
# <class 'baby_steps.Then'> 'it should return expected status code'
Custom Steps
from baby_steps import Step
class AndThen(Step):
pass
and_then = AndThen()
with and_then("smth"):
pass
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
baby-steps-1.1.0.tar.gz
(6.5 kB
view hashes)
Built Distribution
Close
Hashes for baby_steps-1.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 086cf969df997422a5cbceec43cf2f519b9a610fdcd8c1b09d395998ea7d5d4a |
|
MD5 | 3565e5ab35184fa148d35e45f9dd0385 |
|
BLAKE2b-256 | d89e0ed63642926d4d4b181f2358993fc125d08114773b047a9d1b9d42f99479 |