public
Description: Behaviour Driven Development framework for Ruby
Homepage: http://rspec.info
Clone URL: git://github.com/dchelimsky/rspec.git
Click here to lend your support to: rspec and make a donation at www.pledgie.com !
rspec /
name age message
file .autotest Sat Mar 07 09:01:49 -0800 2009 remove autotest/growl (for the moment - figure ... [dchelimsky]
file .document Sun Mar 22 15:21:14 -0700 2009 README => rdoc [dchelimsky]
file .gitignore Sun Mar 29 11:43:54 -0700 2009 ignore vim swap files [bmabey]
file History.rdoc Loading commit data...
file License.txt Mon Feb 02 08:50:08 -0800 2009 update license [dchelimsky]
file Manifest.txt
file README.rdoc Thu Apr 30 03:08:08 -0700 2009 Update a couple of examples that are only faili... [dchelimsky]
file Rakefile Wed Jun 03 07:06:59 -0700 2009 upgrade hoe to 2.0.0 [dchelimsky]
file Ruby1.9.rdoc Sun Mar 22 15:10:29 -0700 2009 Ruby.1.9 info => rdoc [dchelimsky]
file TODO.txt Sat Mar 21 07:13:45 -0700 2009 words [dchelimsky]
file Upgrade.rdoc Mon Jun 22 19:06:56 -0700 2009 bump to final 1.2.7 [dchelimsky]
directory bin/ Sat Jan 24 15:27:36 -0800 2009 added explicit autorun feature for running spec... [dchelimsky]
file cucumber.yml Sun Mar 15 06:50:06 -0700 2009 Only run rcov and heckle with ruby 1.8 when run... [dchelimsky]
directory examples/ Wed Apr 29 05:12:17 -0700 2009 Added options hash to example group proxy. [dchelimsky]
directory features-pending/ Fri Feb 06 23:53:02 -0800 2009 add pending feature - conditional exclusion of ... [dchelimsky]
directory features/ Sun Jun 28 17:11:08 -0700 2009 custom message to should is not part of a hash ... [dchelimsky]
file init.rb Thu Apr 03 15:02:31 -0700 2008 remove everything but rspec (core) from main rs... [dchelimsky]
directory lib/
directory resources/ Wed Apr 01 19:09:26 -0700 2009 converted example_group_with_should_methods.fea... [bmabey]
directory spec/
README.rdoc

RSpec

DESCRIPTION:

RSpec is a Behaviour Driven Development framework for writing executable code examples.

FEATURES:

  • Spec::Example provides a framework for organizing executable code examples
  • Spec::Expectations adds #should and #should_not to every object
  • Spec::Matchers provides Expression Matchers for use with #should and #should_not
  • Spec::Mocks is a full featured mock object/stubbing library

SYNOPSIS:

  describe Account do
    context "transfering money" do
      it "deposits transfer amount to the other account" do
        source = Account.new(50, :USD)
        target = mock('target account')
        target.should_receive(:deposit).with(Money.new(5, :USD))
        source.transfer(5, :USD).to(target)
      end

      it "reduces its balance by the transfer amount" do
        source = Account.new(50, :USD)
        target = stub('target account')
        source.transfer(5, :USD).to(target)
        source.balance.should == Money.new(45, :USD)
      end
    end
  end

  $ spec spec/account_spec.rb --format nested
  Account
    transfering money
      deposits transfer amount to the other account
      reduces its balance by the transfer amount

  2 examples, 0 failures

INSTALL:

  [sudo] gem install rspec

 or

 clone, build, install - See http://wiki.github.com/dchelimsky/rspec