Class | Spec::Runner::Configuration |
In: |
lib/spec/runner/configuration.rb
|
Parent: | Object |
Appends a global after block to all example groups. See append_before for filtering semantics.
Appends a global before block to all example groups.
If you want to restrict the block to a subset of all the example groups then specify this in a Hash as the last argument:
config.prepend_before(:all, :type => :farm)
or
config.prepend_before(:type => :farm)
Works just like include, but extends the example groups with the modules rather than including them.
Declares modules to be included in multiple example groups (describe blocks). With no :type, the modules listed will be included in all example groups.
Use :type to restrict the inclusion to a subset of example groups. The value assigned to :type should be a key that maps to a class that is either a subclass of Spec::Example::ExampleGroup or extends Spec::Example::ExampleGroupMethods and includes Spec::Example::ExampleMethods.
For example, the rspec-rails gem/plugin extends Test::Unit::TestCase with Spec::Example::ExampleGroupMethods and includes Spec::Example::ExampleMethods in it. So if you have a module of helper methods for controller examples, you could do this:
config.include(ControllerExampleHelpers, :type => :controller)
Only example groups that have that type will get the modules included:
describe Account, :type => :model do # Will *not* include ControllerExampleHelpers end describe AccountsController, :type => :controller do # *Will* include ControllerExampleHelpers end
Chooses what mock framework to use. Example:
Spec::Runner.configure do |config| config.mock_with :rspec, :mocha, :flexmock, or :rr end
To use any other mock framework, you‘ll have to provide your own adapter. This is simply a module that responds to the following methods:
setup_mocks_for_rspec verify_mocks_for_rspec teardown_mocks_for_rspec.
These are your hooks into the lifecycle of a given example. RSpec will call setup_mocks_for_rspec before running anything else in each Example. After executing the after methods, RSpec will then call verify_mocks_for_rspec and teardown_mocks_for_rspec (this is guaranteed to run even if there are failures in verify_mocks_for_rspec).
Once you‘ve defined this module, you can pass that to mock_with:
Spec::Runner.configure do |config| config.mock_with MyMockFrameworkAdapter end
Defines global predicate matchers. Example:
config.predicate_matchers[:swim] = :can_swim?
This makes it possible to say:
person.should swim # passes if person.can_swim? returns true
Prepends a global after block to all example groups. See append_before for filtering semantics.
Prepends a global before block to all example groups. See append_before for filtering semantics.