Fudge Documentation

Fudge is a Python module for using fake objects (mocks, stubs, etc) to test real ones.

This module is designed for two specific situations:

  • Replace an object
    • Temporarily return a canned value for a method or allow a method to be called without affect.
  • Ensure an object is used correctly
    • Declare expectations about what methods should be called and what arguments should be sent.

Fudge was inspired by Mocha which is a simpler version of jMock. But unlike Mocha, Fudge does not automatically hijack real objects; you explicitly patch them in your test setup. And unlike jMock, Fudge is only as strict about expectations as you want it to be. If you just want to expect a method call without worrying about its arguments or the type of the arguments then you can.

Download / Install

Just type:

$ sudo easy_install fudge

If you don’t have easy_install for Python you can get it like this:

$ wget http://peak.telecommunity.com/dist/ez_setup.py
$ sudo python ez_setup.py

Fudge requires Python 2.4 or higher and is developed primarily against 2.5 and 2.6.

Source

The Fudge source can be downloaded as a tar.gz file from http://pypi.python.org/pypi/fudge

To checkout the Fudge source, install Mercurial and type:

$ hg clone http://bitbucket.org/kumar303/fudge/

You can get updates with:

$ hg pull --update

Contributing

Please submit bugs and patches, preferably with tests. All contributors will be acknowledged. Thanks!

Credits

Fudge was created by Kumar McMillan and contains contributions by Cristian Esquivias and Michael Williamson.

Changelog

Table Of Contents

Next topic

Using Fudge

This Page