Sha256: 7fec1293414a7ffce10e1b7a033f88258bb8675dc8540a4b25e2db7f248a5773
Contents?: true
Size: 1.12 KB
Versions: 12
Compression:
Stored size: 1.12 KB
Contents
require 'capybara' module Capybara class << self attr_writer :default_driver, :current_driver, :javascript_driver attr_accessor :app def default_driver @default_driver || :rack_test end def current_driver @current_driver || default_driver end alias_method :mode, :current_driver def javascript_driver @javascript_driver || :selenium end def use_default_driver @current_driver = nil end def current_session session_pool["#{current_driver}#{app.object_id}"] ||= Capybara::Session.new(current_driver, app) end def current_session? session_pool.has_key?("#{current_driver}#{app.object_id}") end def reset_sessions! session_pool.each { |mode, session| session.cleanup! } @session_pool = nil end private def session_pool @session_pool ||= {} end end extend(self) def page Capybara.current_session end Session::DSL_METHODS.each do |method| class_eval <<-RUBY, __FILE__, __LINE__+1 def #{method}(*args, &block) page.#{method}(*args, &block) end RUBY end end
Version data entries
12 entries across 12 versions & 6 rubygems