Module: FixtureKit::RSpec

Defined in:
lib/fixture_kit/rspec.rb

Defined Under Namespace

Modules: ClassMethods, InstanceMethods

Constant Summary collapse

DECLARATION_METADATA_KEY =
:fixture_kit_declaration

Class Method Summary collapse

Class Method Details

.configure!(config) ⇒ Object



58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
# File 'lib/fixture_kit/rspec.rb', line 58

def self.configure!(config)
  config.add_setting(:fixture_kit, default: FixtureKit.runner)
  FixtureKit.runner.configuration.fixture_path = "spec/fixture_kit"
  FixtureKit.runner.configuration.adapter(FixtureKit::RSpecAdapter)

  config.extend ClassMethods
  config.include InstanceMethods

  # Load declared fixtures at the beginning of each example.
  # Runs inside transactional fixtures and before user-defined before hooks.
  config.prepend_before(:example, DECLARATION_METADATA_KEY) do |example|
    @_fixture_kit_repository = example.[DECLARATION_METADATA_KEY].mount
  end

  config.append_before(:suite) do
    config.fixture_kit.start
  end
end