Module: Thumblemonks::Forklift::RailsContextExtensions

Defined in:
lib/forklift/context_extensions.rb

Instance Method Summary collapse

Instance Method Details

#depot(&block) ⇒ Object



5
6
7
8
9
10
11
12
13
# File 'lib/forklift/context_extensions.rb', line 5

def depot(&block)
  captured_instance_vars, depot_ran = nil, false
  add_callback(:before_fixture_load) do 
    ActiveRecord::Base.connection.rollback_to_savepoint and puts("Rolling back to savepoint") if depot_ran
    inject_instance_vars(captured_instance_vars) && next if depot_ran
    captured_instance_vars, depot_ran = run_depot_and_capture_vars(block), true
    ActiveRecord::Base.connection.create_savepoint and puts("Creating savepoint")
  end
end