rgf: red/green/refactor, a BDD framework for writing and running specs.
Project description
red / green / refactor
CI on Travis: http://travis-ci.org/fidothe/rgf
Code on Github: https://github.com/fidothe/rgf
Package on PyPI: http://pypi.python.org/pypi/rgf
A currently experimental attempt at an RSpec-esque BDD testing framework for Python.
Basically we’re aiming for syntax along these lines:
from rgf import describe, it with describe("That Thing"): @it("test desc") def spec(context): # test code here assert stuff()
x_spec.py files go in a directory structure under, by convention, spec/ in the root of your project and are run using:
rgf spec
The specifics of the syntax are currently wrong, being borrowed directly from RSpec. Suggestions warmly received.
(Current front-runners are subject and context in place of describe, keeping it for the spec decorator.)
Because the spec functions are just functions, not methods, and are hoovered up by the @it decorator they’re effectively anonymous and can all have the same name for ease of thinking:
with subject('This Class'): @it('can calculate X') def s(world): pass @it('can account for Y') def s(world): pass
The aim is for something pythonic, with nested context and good spec names being the primary focus: minimum magic, minimum fuss.
Changelog
0.2.0.1 (2012-05-19)
bump to update the Changelog, which I had neglected to do for 0.2.0 (sorry)
0.2.0 (2012-05-18)
Python 3 support, courtesy of Marc Abramowitz
create rgf and rgf-x.y scripts using distribute
ExampleGroups can be nested using with describe():
0.0.2 (2012-05-13)
Anonymous module collection of specs using randomly-generated module names. (fixes problems with imports of specs related to polluting sys.modules)
0.0.1 (2012-05-12)
The so-how-does-pypi-work-then? release.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.