File: README

# README

Path: | README
Last Update: | Wed Mar 26 13:25:45 -0600 2008

# Mocha

Mocha is a library for mocking and stubbing using a syntax like that of JMock, and SchMock. Most commonly Mocha is used in conjunction with Test::Unit, but it can be used in other contexts.

One of its main advantages is that it allows you to mock and stub methods on real (non-mock) classes and instances. You can for example stub ActiveRecord instance methods like `create`, `save`, `destroy` and even class methods like `find` to avoid hitting the database in unit tests.

Mocha provides a unified, simple and readable syntax for both traditional mocking and for mocking with real objects.

Mocha has been harvested from projects at Reevoo by me (James) and my colleagues Ben, Chris and Paul. Mocha is in use on real-world Rails projects.

## Download and Installation

Install the gem with the following command…

      $ gem install mocha

Or install the Rails plugin…

      $ script/plugin install svn://rubyforge.org/var/svn/mocha/trunk

Or download Mocha from here - rubyforge.org/projects/mocha

## Examples

- Quick Start - Usage Examples
- Traditional mocking - Star Trek Example
- Setting expectations on real classes - Order Example
- More examples on Floehopper's Blog
- Mailing List Archives

## License

Copyright Revieworld Ltd. 2006

You may use, copy and redistribute this library under the same terms as Ruby itself or under the MIT license.

[Validate]