Just a quick note that there is a new version of Fudge, a mock and stub library for Python. This fixes a lot of bugs in the old release and adds some nice new features:
- You can now declare method expectations more expressively using argument inspectors.
- Declaring an expected method order is now possible with fudge.Fake.remember_order().
- Added fudge.Fake.raises() for simulating exceptions.
- Declaring and modifying call chains is easier and more readable now.
- Lots of bugs fixed, all listed in the Changelog.
Thanks for all the feedback thus far. Special thanks to June Kim for testing this release early and providing feedback on the new interfaces.
I keep getting asked why I created yet another Python mock framework. I really didn't want to and explain my motivation here. I am a huge fan of PyPI and would be lost without all the hard work from the open source community but there is always room for more packages. It provides more options to developers and oftentimes rewriting software can be largely rewarding at a small cost. For example, since I wrote Fudge from the ground up I was able to focus on small things like ensuring that all object representations are sane and that exception messages are as informative as possible. Little things like that can be hard to retrofit into an existing library if they were not written right the first time.