Sha256: 78bc0fef945b1ab0161d0e15310313fa63e8d2fcc343bc08cd950c03dd797715
Contents?: true
Size: 915 Bytes
Versions: 11
Compression:
Stored size: 915 Bytes
Contents
# frozen_string_literal: true module Cucumber module Rails module Database class SharedConnectionStrategy < Strategy def before_js # Forces all threads to share a connection on a per-model basis, # as connections may vary per model as per establish_connection. This works # on Capybara because it starts the web server in a thread. ActiveRecord::Base.shared_connection = ActiveRecord::Base.connection ActiveRecord::Base.descendants.each do |model| model.shared_connection = model.connection end end def before_non_js # Do not use a shared connection unless we're in a @javascript scenario ActiveRecord::Base.shared_connection = nil ActiveRecord::Base.descendants.each do |model| model.shared_connection = nil end end end end end end
Version data entries
11 entries across 11 versions & 1 rubygems