class Capybara::RegistrationContainer
@api private
Public Class Methods
new()
click to toggle source
# File lib/capybara/registration_container.rb, line 36 def initialize @registered = {} end
Public Instance Methods
[](name)
click to toggle source
# File lib/capybara/registration_container.rb, line 10 def [](name) @registered[name] end
[]=(name, value)
click to toggle source
# File lib/capybara/registration_container.rb, line 14 def []=(name, value) Capybara::Helpers.warn 'DEPRECATED: Directly setting drivers/servers is deprecated, please use Capybara.register_driver/register_server instead' @registered[name] = value end
method_missing(method_name, *args, **options, &block)
click to toggle source
Calls superclass method
# File lib/capybara/registration_container.rb, line 19 def method_missing(method_name, *args, **options, &block) if @registered.respond_to?(method_name) Capybara::Helpers.warn "DEPRECATED: Calling '#{method_name}' on the drivers/servers container is deprecated without replacement" # RUBY 2.6 will send an empty hash rather than nothing with **options so fix that return @registered.public_send(method_name, *args, &block) if options.empty? return @registered.public_send(method_name, *args, **options, &block) end super end
names()
click to toggle source
# File lib/capybara/registration_container.rb, line 6 def names @registered.keys end
respond_to_missing?(method_name, include_all)
click to toggle source
Calls superclass method
# File lib/capybara/registration_container.rb, line 30 def respond_to_missing?(method_name, include_all) @registered.respond_to?(method_name) || super end
Private Instance Methods
register(name, block)
click to toggle source
# File lib/capybara/registration_container.rb, line 40 def register(name, block) @registered[name] = block end