No project description provided
Project description
Rumex
Behaviour Driven Development (BDD) testing library.
Rumex is trying to be more of a library rather than a framework. This approach aims to increase flexibility and reduce dependency on design choices made by designers of alternative frameworks.
Installation
pip install rumex
Basic example
import rumex
example_file = rumex.InputFile(
text="""
Name: Basic example
Scenario: Simple arithmetics
Given an integer 1
And an integer 2
When addition is performed
Then the result is 3
""",
uri="in place file, just an example",
)
steps = rumex.StepMapper()
class Context:
def __init__(self):
self.integers = []
self.sum = None
@steps(r"an integer (\d+)")
def store_integer(integer: int, *, context: Context):
context.integers.append(integer)
@steps(r"addition is performed")
def add(*, context: Context):
context.sum = sum(context.integers)
@steps(r"the result is (\d+)")
def check_result(expected_result: int, *, context: Context):
assert expected_result == context.sum
rumex.run(
files=[example_file],
steps=steps,
context_maker=Context,
)
More examples
To discover Rumex's features you can look at the examples in docs/examples
.
API
For API documentation see docs/api
Some alternatives
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
rumex-0.7.0.tar.gz
(11.0 kB
view hashes)
Built Distribution
rumex-0.7.0-py3-none-any.whl
(12.7 kB
view hashes)