Module: RSpec::Determinator

Defined in:
lib/rspec/determinator.rb

Defined Under Namespace

Modules: DSL Classes: FakeDeterminator

Class Method Summary collapse

Class Method Details

.included(by) ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# File 'lib/rspec/determinator.rb', line 6

def self.included(by)
  by.extend(DSL)

  by.let(:fake_retriever) { ::Determinator::Retrieve::InMemoryRetriever.new }
  by.let(:fake_determinator) { ::RSpec::Determinator::FakeDeterminator.new(fake_retriever) }
  by.around do |example|
    old_retriever = ::Determinator.instance.retrieval
    begin
      fake_retriever.clear!
      ::Determinator.configure(retrieval: fake_retriever)
      example.run
    ensure
      ::Determinator.configure(retrieval: old_retriever)
    end
  end
end