Skip to content

[🐛 Bug] Seeing wrong constant name Selenium::DevTools::V129:: when sending commands to devtools #14575

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
obromios opened this issue Oct 8, 2024 · 3 comments
Labels
C-rb Ruby Bindings I-defect Something is not working as intended J-stale Applied to issues that become stale, and eventually closed.

Comments

@obromios
Copy link

obromios commented Oct 8, 2024

What happened?

In a Ruby on Rails rspec system test, I am trying to send a command to devtools e.g.

browser.devtools.send_command('Page.getNavigationHistory')

or

browser.devtools.send_command('Browser.grantPermissions', {
                                    origin: 'http://localhost:3000/',
                                    permissions: ['geolocation']
                                  })

but see

NameError: wrong constant name Selenium::DevTools::V129::
gems/selenium-webdriver-4.25.0/lib/selenium/webdriver/devtools.rb:66:in `const_defined?

I am using selenium-webdriver v4.25.0 and selenium-devtools v129, rails v7.0.8.4.

It appears the problem is caused by the fact that

gems/selenium-webdriver-4.25.0/lib/selenium/webdriver/devtools

does not have a v129 directory. I have tried uninstall and installing selenium-webdriver and selenium-devtools and that did not fix the problem.

How can we reproduce the issue?

Capybara.register_driver :chrome do |app|
  options = Selenium::WebDriver::Chrome::Options.new
  options.add_argument('--headless') unless ENV['CHROME_HEAD']
  options.add_argument('--no-sandbox')
  options.add_argument('--disable-dev-shm-usage')
  Capybara::Selenium::Driver.new(app, browser: :chrome, options:)
end    
browser = Capybara.current_session.driver.browser
browser.devtools.send_command('Browser.grantPermissions', {
                                    origin: 'http://localhost:3000',
                                    permissions: ['geolocation']
                                  })

Relevant log output

Capybara starting Puma...
* Version 5.6.9 , codename: Birdie's Version
* Min threads: 0, max threads: 4
Exception `Errno::ECONNREFUSED' at /Users/chris/.rvm/gems/ruby-3.3.4@golf_mentor/gems/net-http-0.3.2/lib/net/http.rb:1271 - Connection refused - connect(2) for "127.0.0.1" port 52332
Exception `Errno::ECONNREFUSED' at /Users/chris/.rvm/gems/ruby-3.3.4@golf_mentor/gems/net-http-0.3.2/lib/net/http.rb:1273 - Failed to open TCP connection to 127.0.0.1:52332 (Connection refused - connect(2) for "127.0.0.1" port 52332)
Exception `Errno::ECONNREFUSED' at /Users/chris/.rvm/gems/ruby-3.3.4@golf_mentor/gems/net-http-0.3.2/lib/net/http.rb:1359 - Failed to open TCP connection to 127.0.0.1:52332 (Connection refused - connect(2) for "127.0.0.1" port 52332)
* Listening on http://127.0.0.1:52332
Exception `EOFError' at <internal:io>:63 - end of file reached
Exception `EOFError' at /Users/chris/.rvm/gems/ruby-3.3.4@golf_mentor/gems/puma-5.6.9/lib/puma/client.rb:235 - EOFError
Exception `EOFError' at <internal:io>:63 - end of file reached
Exception `EOFError' at /Users/chris/.rvm/gems/ruby-3.3.4@golf_mentor/gems/puma-5.6.9/lib/puma/client.rb:235 - EOFError
2024-10-08 14:02:38 INFO Selenium [:logger_info] Details on how to use and modify Selenium logger:
  https://selenium.dev/documentation/webdriver/troubleshooting/logging

2024-10-08 14:02:38 DEBUG Selenium [:selenium_manager] Selenium Manager binary found at /Users/chris/.rvm/gems/ruby-3.3.4@golf_mentor/gems/selenium-webdriver-4.25.0/bin/macos/selenium-manager 
2024-10-08 14:02:38 DEBUG Selenium [:selenium_manager] Executing Process ["/Users/chris/.rvm/gems/ruby-3.3.4@golf_mentor/gems/selenium-webdriver-4.25.0/bin/macos/selenium-manager", "--browser", "chrome", "--language-binding", "ruby", "--output", "json", "--debug"] 
2024-10-08 14:02:38 DEBUG Selenium [:selenium_manager] Found chromedriver 129.0.6668.70 in PATH: /opt/homebrew/bin/chromedriver 
2024-10-08 14:02:38 DEBUG Selenium [:selenium_manager] chrome detected at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome 
2024-10-08 14:02:38 DEBUG Selenium [:selenium_manager] Running command: /Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --version 
2024-10-08 14:02:38 DEBUG Selenium [:selenium_manager] Output: "Google Chrome 129.0.6668.90 " 
2024-10-08 14:02:38 DEBUG Selenium [:selenium_manager] Detected browser: chrome 129.0.6668.90 
2024-10-08 14:02:38 DEBUG Selenium [:selenium_manager] Required driver: chromedriver 129.0.6668.89 
2024-10-08 14:02:38 DEBUG Selenium [:selenium_manager] Driver path: /opt/homebrew/bin/chromedriver 
2024-10-08 14:02:38 DEBUG Selenium [:selenium_manager] Browser path: /Applications/Google Chrome.app/Contents/MacOS/Google Chrome 
2024-10-08 14:02:38 DEBUG Selenium [:driver_service] Executing Process ["/opt/homebrew/bin/chromedriver", "--port=9515"] 
2024-10-08 14:02:38 DEBUG Selenium [:process] Starting process: ["/opt/homebrew/bin/chromedriver", "--port=9515"] with {[:out, :err]=>#<IO:<STDERR>>, :pgroup=>true} 
2024-10-08 14:02:38 DEBUG Selenium [:process]   -> pid: 67763 
Exception `IO::EINPROGRESSWaitWritable' at /Users/chris/.rvm/rubies/ruby-3.3.4/lib/ruby/3.3.0/socket.rb:1219 - Operation now in progress - connect(2) would block
Exception `Errno::ECONNREFUSED' at /Users/chris/.rvm/gems/ruby-3.3.4@golf_mentor/gems/selenium-webdriver-4.25.0/lib/selenium/webdriver/common/socket_poller.rb:87 - Connection refused
2024-10-08 14:02:38 DEBUG Selenium [:driver_service] polling for socket on ["127.0.0.1", 9515] 
Starting ChromeDriver 129.0.6668.70 (df87d5cf12b1397be7495a04cab2db6239b227a8-refs/branch-heads/6668@{#1420}) on port 9515
Only local connections are allowed.
Please see https://chromedriver.chromium.org/security-considerations for suggestions on keeping ChromeDriver safe.
ChromeDriver was started successfully on port 9515.
Exception `IO::EINPROGRESSWaitWritable' at /Users/chris/.rvm/rubies/ruby-3.3.4/lib/ruby/3.3.0/socket.rb:1219 - Operation now in progress - connect(2) would block
Exception `Errno::EISCONN' at /Users/chris/.rvm/rubies/ruby-3.3.4/lib/ruby/3.3.0/socket.rb:1219 - Socket is already connected - connect(2) for 127.0.0.1:9515
2024-10-08 14:02:38 DEBUG Selenium [:command] -> POST session 
2024-10-08 14:02:38 DEBUG Selenium [:command]    >>> http://127.0.0.1:9515/session | {"capabilities":{"alwaysMatch":{"browserName":"chrome","goog:chromeOptions":{"args":["--headless","--disable-site-isolation-trials"],"binary":"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome"}}}} 
2024-10-08 14:02:38 DEBUG Selenium [:header]      > {"Accept"=>"application/json", "Content-Type"=>"application/json; charset=UTF-8", "User-Agent"=>"selenium/4.25.0 (ruby macosx)", "Content-Length"=>"208"} 
2024-10-08 14:02:39 DEBUG Selenium [:header]    <<<  {"content-length"=>["890"], "content-type"=>["application/json; charset=utf-8"], "cache-control"=>["no-cache"]} 
2024-10-08 14:02:39 DEBUG Selenium [:command] <- {"value":{"capabilities":{"acceptInsecureCerts":false,"browserName":"chrome","browserVersion":"129.0.6668.90","chrome":{"chromedriverVersion":"129.0.6668.70 (df87d5cf12b1397be7495a04cab2db6239b227a8-refs/branch-heads/6668@{#1420})","userDataDir":"/var/folders/bq/3ljgnvcj5l39yt0zjy1cyvl40000gn/T/.org.chromium.Chromium.kn6bgU"},"fedcm:accounts":true,"goog:chromeOptions":{"debuggerAddress":"localhost:52339"},"networkConnectionEnabled":false,"pageLoadStrategy":"normal","platformName":"mac","proxy":{},"setWindowRect":true,"strictFileInteractability":false,"timeouts":{"implicit":0,"pageLoad":300000,"script":30000},"unhandledPromptBehavior":"dismiss and notify","webauthn:extension:credBlob":true,"webauthn:extension:largeBlob":true,"webauthn:extension:minPinLength":true,"webauthn:extension:prf":true,"webauthn:virtualAuthenticators":true},"sessionId":"71ae2c30a51f059084ced09f684b0d20"}} 
2024-10-08 14:02:39 DEBUG Selenium [:bidi] WebSocket -> {:method=>"Target.getTargets", :params=>{}, :id=>1} 
2024-10-08 14:02:39 DEBUG Selenium [:bidi] WebSocket <- {"id"=>1, "result"=>{"targetInfos"=>[{"targetId"=>"77E42EA25C19CD206611534426A9672B", "type"=>"page", "title"=>"data:,", "url"=>"data:,", "attached"=>true, "canAccessOpener"=>false, "browserContextId"=>"A38D04420989939913F8D4595177D87B"}]}} 
2024-10-08 14:02:39 DEBUG Selenium [:bidi] WebSocket -> {:method=>"Target.attachToTarget", :params=>{:targetId=>"77E42EA25C19CD206611534426A9672B", :flatten=>true}, :id=>2} 
2024-10-08 14:02:39 DEBUG Selenium [:bidi] WebSocket <- {"method"=>"Target.attachedToTarget", "params"=>{"sessionId"=>"20B14B3C39E74BF0DE237179C9F6B55E", "targetInfo"=>{"targetId"=>"77E42EA25C19CD206611534426A9672B", "type"=>"page", "title"=>"data:,", "url"=>"data:,", "attached"=>true, "canAccessOpener"=>false, "browserContextId"=>"A38D04420989939913F8D4595177D87B"}, "waitingForDebugger"=>false}} 
2024-10-08 14:02:39 DEBUG Selenium [:bidi] WebSocket <- {"id"=>2, "result"=>{"sessionId"=>"20B14B3C39E74BF0DE237179C9F6B55E"}} 
Exception `NameError' at /Users/chris/.rvm/gems/ruby-3.3.4@golf_mentor/gems/selenium-webdriver-4.25.0/lib/selenium/webdriver/devtools.rb:66 - wrong constant name Selenium::DevTools::V129::
2024-10-08 14:02:39 DEBUG Selenium [:command] -> GET session/71ae2c30a51f059084ced09f684b0d20/screenshot 
2024-10-08 14:02:39 DEBUG Selenium [:header]    <<<  {"content-length"=>["6264"], "content-type"=>["application/json; charset=utf-8"], "cache-control"=>["no-cache"]} 
2024-10-08 14:02:39 DEBUG Selenium [:command] <- {"value":"iVBORw0KGgoAAAANSUhEUgAABLAAAAMwCAIAAAC/VA7OAAAAAXNSR0IArs4c6QAAEgpJREFUeJzt1zEBACAMwDDAv+chY0cTBX17Z+YAAADQ87YDAAAA2GEIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAER907MJXcYTtW4AAAAASUVORK5CYII="} 
2024-10-08 14:02:39 DEBUG Selenium [:command] -> GET session/71ae2c30a51f059084ced09f684b0d20/url 
2024-10-08 14:02:39 DEBUG Selenium [:header]    <<<  {"content-length"=>["18"], "content-type"=>["application/json; charset=utf-8"], "cache-control"=>["no-cache"]} 
2024-10-08 14:02:39 DEBUG Selenium [:command] <- {"value":"data:,"} 
2024-10-08 14:02:39 DEBUG Selenium [:command] -> GET session/71ae2c30a51f059084ced09f684b0d20/url 
2024-10-08 14:02:39 DEBUG Selenium [:header]    <<<  {"content-length"=>["18"], "content-type"=>["application/json; charset=utf-8"], "cache-control"=>["no-cache"]} 
2024-10-08 14:02:39 DEBUG Selenium [:command] <- {"value":"data:,"} 
2024-10-08 14:02:39 DEBUG Selenium [:command] -> GET session/71ae2c30a51f059084ced09f684b0d20/source 
2024-10-08 14:02:39 DEBUG Selenium [:header]    <<<  {"content-length"=>["81"], "content-type"=>["application/json; charset=utf-8"], "cache-control"=>["no-cache"]} 
2024-10-08 14:02:39 DEBUG Selenium [:command] <- {"value":"\u003Chtml>\u003Chead>\u003C/head>\u003Cbody>\u003C/body>\u003C/html>"} 
2024-10-08 14:02:39 DEBUG Selenium [:command] -> GET session/71ae2c30a51f059084ced09f684b0d20/screenshot 
2024-10-08 14:02:39 DEBUG Selenium [:header]    <<<  {"content-length"=>["6264"], "content-type"=>["application/json; charset=utf-8"], "cache-control"=>["no-cache"]} 
2024-10-08 14:02:39 DEBUG Selenium [:command] <- {"value":"iVBORw0KGgoAAAANSUhEUgAABLAAAAMwCAIAAAC/VA7OAAAAAXNSR0IArs4c6QAAEgpJREFUeJzt1zEBACAMwDDAv+chY0cTBX17Z+YAAADQ87YDAAAA2GEIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAEQZQgAAgChDCAAAEGUIAQAAogwhAABAlCEEAACIMoQAAABRhhAAACDKEAIAAER907MJXcYTtW4AAAAASUVORK5CYII="} 
F  HTML screenshot: /Users/chris/Sites/golf_mentor/tmp/capybara/screenshot.html
  Image screenshot: /Users/chris/Sites/golf_mentor/tmp/capybara/screenshot.png


Failures:

  1) Course functionality using browser location Normal flow provides necessary location
     Failure/Error:
       browser.devtools.send_command('Browser.grantPermissions', {
                                       origin: 'http://localhost:3000',
                                       permissions: ['geolocation']
                                     })
     
     NameError:
       wrong constant name Selenium::DevTools::V129::

Operating System

Mac OSX 14.6.1

Selenium version

ruby v3.24

What are the browser(s) and version(s) where you see this issue?

Chrome 129.0.6668.90

What are the browser driver(s) and version(s) where you see this issue?

ChromeDriver 129.0.6668.70

Are you using Selenium Grid?

No response

@obromios obromios added I-defect Something is not working as intended A-needs-triaging A Selenium member will evaluate this soon! labels Oct 8, 2024
Copy link

github-actions bot commented Oct 8, 2024

@obromios, thank you for creating this issue. We will troubleshoot it as soon as we can.


Info for maintainers

Triage this issue by using labels.

If information is missing, add a helpful comment and then I-issue-template label.

If the issue is a question, add the I-question label.

If the issue is valid but there is no time to troubleshoot it, consider adding the help wanted label.

If the issue requires changes or fixes from an external project (e.g., ChromeDriver, GeckoDriver, MSEdgeDriver, W3C), add the applicable G-* label, and it will provide the correct link and auto-close the issue.

After troubleshooting the issue, please add the R-awaiting answer label.

Thank you!

@pujagani pujagani added the ruby label Oct 8, 2024
@diemol diemol added C-rb Ruby Bindings and removed A-needs-triaging A Selenium member will evaluate this soon! ruby labels Nov 5, 2024
Copy link

github-actions bot commented May 4, 2025

This issue is stale because it has been open 280 days with no activity. Remove stale label or comment or this will be closed in 14 days.

@github-actions github-actions bot added the J-stale Applied to issues that become stale, and eventually closed. label May 4, 2025
@titusfortner
Copy link
Member

Sorry for not triaging this sooner.

The devtools definitions are pulled from the selenium-devtools gem, so it is expected that the directory in selenium-webtools will be empty. The point of the devtools method is to manage the send_command pieces for you. The right way to do what you want is:

    driver.devtools.browser.grant_permissions(
      origin: 'http://localhost:3000/',
      permissions: ['geolocation'])

@titusfortner titusfortner closed this as not planned Won't fix, can't repro, duplicate, stale May 5, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-rb Ruby Bindings I-defect Something is not working as intended J-stale Applied to issues that become stale, and eventually closed.
Projects
None yet
Development

No branches or pull requests

4 participants