class SPV::DSL::InitialAdjuster
This class provides DSL
which is used while defining fixtures and applying them.
Public Class Methods
# File lib/site_prism_vcr/dsl/initial_adjuster.rb, line 6 def initialize(options) @options = options @tmp_keeper = Fixtures::TmpKeeper.new(@options) @fixtures_handler = Fixtures::Handler.new(@options) end
Public Instance Methods
Defines fixtures which will be inserted into VCR.
@param list [Array<String>] List of fixtures.
@return [void]
@api public
# File lib/site_prism_vcr/dsl/initial_adjuster.rb, line 19 def fixtures(list) prepared_fixtures = @fixtures_handler.handle_raw( list, [ Fixtures::Modifiers::ShortcutPath.new(@options), Fixtures::Modifiers::RelativePath.new(@options) ] ) @tmp_keeper.add_fixtures(prepared_fixtures) end
Defines a home path to fixtures. Later this path can be used for defining fixtures.
Example:
home_path 'cassettes/cars/ford' fixtures['~/car']
@param path [String] Path to fixtures.
@return [void]
@api public
# File lib/site_prism_vcr/dsl/initial_adjuster.rb, line 43 def home_path(path) @options.add_shortcut_path('~', path) end
Applies a given path to list of fixtures and defines those fixtures to be inserted into VCR.
@param path [String] Path to fixtures. @param fixture_names [Array<String>] List of fixtures.
@return [void]
@raise [ArgumentError] If any of fixture names has path to a home directory.
@api public
# File lib/site_prism_vcr/dsl/initial_adjuster.rb, line 75 def path(path, fixture_names) options_with_path = OptionsWithPath.new(@options) options_with_path.path = path path_modifier = Fixtures::Modifiers::Path.new(options_with_path) home_path_modifier = Fixtures::Modifiers::ShortcutPath.new(options_with_path) prepared_fixtures = @fixtures_handler.handle_raw( fixture_names, [ path_modifier, home_path_modifier ] ) @tmp_keeper.add_fixtures(prepared_fixtures) end
Returns set of prepared fixtures.
@return [SPV::Fixtures] A set of prepared fixtures.
@api public
# File lib/site_prism_vcr/dsl/initial_adjuster.rb, line 115 def prepare_fixtures Fixtures.new(@tmp_keeper.fixtures) end
Defines a shortcut path to fixtures. Later this path can be used for defining fixtures.
Example:
shortcut_path 'ford', 'cassettes/cars/ford' fixtures[':ford/car']
@param name [String] Shortcut name to be used while defining a path to fixtures.. @param path [String] Path to fixtures.
@return [void]
@api public
# File lib/site_prism_vcr/dsl/initial_adjuster.rb, line 60 def shortcut_path(name, path) @options.add_shortcut_path(name, path) end
Defines a waiter which will be used for waiting until all HTTP interactions have finished.
@param options [Hash, nil] Options
which allows to change behavior of a waiter. @option options :eject_cassettes [Boolean] Whether or not to eject
all cassettes from VCR once a waiter meets an expectation.
@yield Block to be used as a waiter.
@return [void]
@api public
# File lib/site_prism_vcr/dsl/initial_adjuster.rb, line 105 def waiter(waiter_options = nil, &block) @options.waiter = block @options.waiter_options = waiter_options end