rspec testing exceptions
rspec is a testing framework designed to make test-driven development enjoyable and productive. On the recent release of RubyIt I wanted to improve the error reporting and cover this new functionality with tests.
Do not forget errors should be output to standard error not standard out, ie:
$stderr.puts 'Error Message'
The rspec documentation has section on error testing. This is my format of my current tests:
describe Bowling, "#score" do
it "returns 0 for all gutter game" do
bowling = Bowling.new
error1 = %{The error message}
$stderr.should_receive(:puts).with( error1 )
lambda { bowling.broken_method }.should raise_error(NameError)
end
end
The $stderr.should_receive
as well as setting up a test suppress the stderr outputting so that the output from the command line regression is clean.
Programming
Ruby
Rspec
]