public
Fork of halorgium/mephisto
Description: A mirror of the mephisto code-base
Homepage: http://mephistoblog.com/
Clone URL: git://github.com/technoweenie/mephisto.git
Click here to lend your support to: mephisto and make a donation at www.pledgie.com !
mephisto / vendor / plugins / mocha
name age message
..
file COPYING Sun Oct 29 17:18:47 -0800 2006 add mocha plugin [technoweenie]
file MIT-LICENSE Sun Oct 29 17:18:47 -0800 2006 add mocha plugin [technoweenie]
file README Tue Jan 30 08:25:30 -0800 2007 massive plugin update, piston++ [technoweenie]
file RELEASE Tue Jan 30 08:25:30 -0800 2007 massive plugin update, piston++ [technoweenie]
file Rakefile Tue Jan 30 08:25:30 -0800 2007 massive plugin update, piston++ [technoweenie]
file TODO Tue Jan 30 08:25:30 -0800 2007 massive plugin update, piston++ [technoweenie]
directory examples/ Sun Oct 29 17:18:47 -0800 2006 add mocha plugin [technoweenie]
file init.rb Sun Oct 29 20:14:23 -0800 2006 big change to templates - store current site te... [technoweenie]
directory lib/ Mon Feb 12 05:07:05 -0800 2007 update plugins [technoweenie]
directory test/ Mon Feb 12 05:07:05 -0800 2007 update plugins [technoweenie]
README
= Mocha

Mocha is a library for mocking and stubbing using a syntax like that of JMock[http://www.jmock.org], and 
SchMock[http://rubyforge.org/projects/schmock]. Most commonly Mocha is used in conjunction with 
Test::Unit[http://www.ruby-doc.org/core/classes/Test/Unit.html], 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[http://api.rubyonrails.com/classes/ActiveRecord/Base.html] 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[http://www.reevoo.com] by me (James[http://blog.floehopper.org]) and my 
colleagues Ben[http://www.reevoo.com/blogs/bengriffiths], Chris[http://blog.seagul.co.uk] and Paul[http://po-ru.com]. 
Mocha is in use on real-world Rails[http://www.rubyonrails.org] projects.

== Download and Installation

Install the gem with the following command...

  $ gem install mocha
 
Or install the Rails[http://www.rubyonrails.org] plugin...

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

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

== Examples

* Quick Start - {Usage Examples}[link:examples/misc.html]
* Traditional mocking - {Star Trek Example}[link:examples/mocha.html]
* Setting expectations on real classes - {Order Example}[link:examples/stubba.html]
* More examples on {Floehopper's Blog}[http://blog.floehopper.org]
* {Mailing List Archives}[http://rubyforge.org/pipermail/mocha-developer/]

== License

Copyright Revieworld Ltd. 2006
   
You may use, copy and redistribute this library under the same terms as {Ruby 
itself}[http://www.ruby-lang.org/en/LICENSE.txt] or under the {MIT 
license}[http://mocha.rubyforge.org/files/MIT-LICENSE.html].