Module | RSpec::Core::SharedExampleGroup |
In: |
lib/rspec/core/shared_example_group.rb
|
@overload shared_examples(name, &block) @overload shared_examples(name, tags, &block)
Wraps the `block` in a module which can then be included in example groups using `include_examples`, `include_context`, or `it_behaves_like`.
@param [String] name to match when looking up this shared group @param block to be eval‘d in a nested example group generated by `it_behaves_like`
@example
shared_examples "auditable" do it "stores an audit record on save!" do lambda { auditable.save! }.should change(Audit, :count).by(1) end end class Account do it_behaves_like "auditable" do def auditable; Account.new; end end end
@see ExampleGroup.it_behaves_like @see ExampleGroup.include_examples @see ExampleGroup.include_context