[rspec-users] Selectively ignoring exceptions in examples

Ash Moran ash.moran at patchspace.co.uk
Mon Aug 29 08:08:56 EDT 2011


Hi all

Long time since I've posted here, hope you're all well :-)

I have a question about ignoring exceptions when they're not interesting. For example, I have a few cases in my code along these lines…

    it "prints an error" do
      expect {
        run_command(%w[ missing_wallet.dat ])
      }.to raise_error

      stream_bundle.captured_error.should eq "Couldn't find wallet file: missing_wallet.dat\n"
    end

    it "raises a CLI::CommandError" do
      expect {
        run_command(%w[ missing_wallet.dat ])
      }.to raise_error(CLI::CommandError)
    end

But in the first example, I'm only bothered about the output, not the error. So I was thinking of writing something along the lines of:

    it "prints an error" do
      ignoring_errors {
        run_command(%w[ missing_wallet.dat ])
      }
      stream_bundle.captured_error.should eq "Couldn't find wallet file: missing_wallet.dat\n"
    end

Now obviously that wouldn't be hard to add as a helper method. But it got me thinking…

* Do any of you do this?
* Does RSpec already let you somehow?
* Is it a useful convention?
* Is it hiding anything else? (I don't use exceptions much, so I may be abusing them.)

Cheers
Ash

-- 
http://www.patchspace.co.uk/
http://www.linkedin.com/in/ashmoran



More information about the rspec-users mailing list