lib/isolator/railtie.rb
# frozen_string_literal: true module Isolator class Railtie < ::Rails::Railtie # :nodoc: config.after_initialize do # Forec load adapters after application initialization # (when all deps are likely to be loaded). load File.join(__dir__, "adapters.rb") Isolator.load_ignore_config(Rails.root.join(".isolator_todo.yml")) next unless Rails.env.test? if defined?(::ActiveRecord::TestFixtures) ::ActiveRecord::TestFixtures.prepend( Module.new do def setup_fixtures(*) super return unless run_in_transaction? open_count = ActiveRecord::Base.connection.open_transactions Isolator.transactions_threshold += open_count end def teardown_fixtures(*) if run_in_transaction? open_count = ActiveRecord::Base.connection.open_transactions Isolator.transactions_threshold -= open_count end super end end ) end end end end