class Selenium::WebDriver::Network
def add_authentication_handler(username, password)
def add_authentication_handler(username, password) intercept = @network.add_intercept(phases: [BiDi::Network::PHASES[:auth_required]]) auth_id = @network.on(:auth_required) do |event| request_id = event['requestId'] @network.continue_with_auth(request_id, username, password) end @callbacks[auth_id] = intercept auth_id end
def add_request_handler
def add_request_handler intercept = @network.add_intercept(phases: [BiDi::Network::PHASES[:before_request]]) request_id = @network.on(:before_request) do |event| request_id = event['requestId'] @network.continue_with_request(request_id: request_id) end @callbacks[request_id] = intercept request_id end
def clear_handlers
def clear_handlers @callbacks.each_key { |id| remove_handler(id) } end
def initialize(bridge)
def initialize(bridge) @network = BiDi::Network.new(bridge.bidi) @callbacks = {} end
def remove_handler(id)
def remove_handler(id) intercept = @callbacks[id] @network.remove_intercept(intercept['intercept']) @callbacks.delete(id) end