Logo: Relish

  1. Sign up
  2. Sign in

Project: RSpec Expectations 3.3

customized message

RSpec tries to provide useful failure messages, but for cases in which you want more
specific information, you can define your own message right in the example.This works for
any matcher other than the operator matchers.

Scenarios
customize failure message
Given
a file named "example_spec.rb" with:
RSpec.describe Array do
  context "when created with new" do
    it "is empty" do
      array = Array.new
      array << 1 # trigger a failure to demonstrate the message
      expect(array).to be_empty, "expected empty array, got #{array.inspect}"
    end
  end
end
When
I run rspec example_spec.rb --format documentation
Then
the output should contain "expected empty array, got [1]"
customize failure message with a proc
Given
a file named "example_spec.rb" with:
RSpec.describe Array do
  context "when created with new" do
    it "is empty" do
      array = Array.new
      array << 1 # trigger a failure to demonstrate the message
      expect(array).to be_empty, lambda { "expected empty array, got #{array.inspect}" }
    end
  end
end
When
I run rspec example_spec.rb --format documentation
Then
the output should contain "expected empty array, got [1]"

Last published about 1 month ago by myronmarston.