selenium-webdriver 4.0.0.alpha6 → 4.0.0.alpha7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
 - data/CHANGES +41 -4
 - data/lib/selenium/server.rb +22 -6
 - data/lib/selenium/webdriver.rb +1 -1
 - data/lib/selenium/webdriver/atoms/findElements.js +89 -90
 - data/lib/selenium/webdriver/atoms/getAttribute.js +79 -59
 - data/lib/selenium/webdriver/atoms/isDisplayed.js +72 -72
 - data/lib/selenium/webdriver/atoms/mutationListener.js +38 -0
 - data/lib/selenium/webdriver/chrome/driver.rb +8 -1
 - data/lib/selenium/webdriver/chrome/options.rb +1 -1
 - data/lib/selenium/webdriver/chrome/profile.rb +1 -1
 - data/lib/selenium/webdriver/common.rb +3 -1
 - data/lib/selenium/webdriver/common/driver.rb +5 -0
 - data/lib/selenium/webdriver/common/driver_extensions/has_authentication.rb +89 -0
 - data/lib/selenium/webdriver/common/driver_extensions/has_devtools.rb +2 -1
 - data/lib/selenium/webdriver/common/driver_extensions/has_log_events.rb +143 -0
 - data/lib/selenium/webdriver/common/element.rb +5 -0
 - data/lib/selenium/webdriver/common/options.rb +3 -3
 - data/lib/selenium/webdriver/common/platform.rb +1 -1
 - data/lib/selenium/webdriver/common/takes_screenshot.rb +63 -0
 - data/lib/selenium/webdriver/devtools.rb +18 -4
 - data/lib/selenium/webdriver/devtools/console_event.rb +38 -0
 - data/lib/selenium/webdriver/devtools/exception_event.rb +36 -0
 - data/lib/selenium/webdriver/devtools/mutation_event.rb +37 -0
 - data/lib/selenium/webdriver/devtools/v84/accessibility.rb +64 -0
 - data/lib/selenium/webdriver/devtools/v84/animation.rb +100 -0
 - data/lib/selenium/webdriver/devtools/v84/application_cache.rb +66 -0
 - data/lib/selenium/webdriver/devtools/{audits.rb → v84/audits.rb} +33 -31
 - data/lib/selenium/webdriver/devtools/v84/background_service.rb +69 -0
 - data/lib/selenium/webdriver/devtools/v84/browser.rb +125 -0
 - data/lib/selenium/webdriver/devtools/v84/cache_storage.rb +75 -0
 - data/lib/selenium/webdriver/devtools/v84/cast.rb +72 -0
 - data/lib/selenium/webdriver/devtools/v84/console.rb +59 -0
 - data/lib/selenium/webdriver/devtools/v84/css.rb +167 -0
 - data/lib/selenium/webdriver/devtools/v84/database.rb +66 -0
 - data/lib/selenium/webdriver/devtools/v84/debugger.rb +231 -0
 - data/lib/selenium/webdriver/devtools/{device_orientation.rb → v84/device_orientation.rb} +20 -18
 - data/lib/selenium/webdriver/devtools/v84/dom.rb +322 -0
 - data/lib/selenium/webdriver/devtools/v84/dom_debugger.rb +95 -0
 - data/lib/selenium/webdriver/devtools/v84/dom_snapshot.rb +67 -0
 - data/lib/selenium/webdriver/devtools/v84/dom_storage.rb +81 -0
 - data/lib/selenium/webdriver/devtools/v84/emulation.rb +182 -0
 - data/lib/selenium/webdriver/devtools/v84/fetch.rb +99 -0
 - data/lib/selenium/webdriver/devtools/v84/headless_experimental.rb +63 -0
 - data/lib/selenium/webdriver/devtools/v84/heap_profiler.rb +109 -0
 - data/lib/selenium/webdriver/devtools/v84/indexed_db.rb +102 -0
 - data/lib/selenium/webdriver/devtools/v84/input.rb +142 -0
 - data/lib/selenium/webdriver/devtools/{inspector.rb → v84/inspector.rb} +22 -20
 - data/lib/selenium/webdriver/devtools/{io.rb → v84/io.rb} +25 -23
 - data/lib/selenium/webdriver/devtools/v84/layer_tree.rb +97 -0
 - data/lib/selenium/webdriver/devtools/{database.rb → v84/log.rb} +33 -29
 - data/lib/selenium/webdriver/devtools/{media.rb → v84/media.rb} +29 -27
 - data/lib/selenium/webdriver/devtools/v84/memory.rb +88 -0
 - data/lib/selenium/webdriver/devtools/v84/network.rb +230 -0
 - data/lib/selenium/webdriver/devtools/v84/overlay.rb +159 -0
 - data/lib/selenium/webdriver/devtools/v84/page.rb +376 -0
 - data/lib/selenium/webdriver/devtools/{performance.rb → v84/performance.rb} +28 -26
 - data/lib/selenium/webdriver/devtools/v84/profiler.rb +113 -0
 - data/lib/selenium/webdriver/devtools/v84/runtime.rb +195 -0
 - data/lib/selenium/webdriver/devtools/{schema.rb → v84/schema.rb} +14 -12
 - data/lib/selenium/webdriver/devtools/v84/security.rb +73 -0
 - data/lib/selenium/webdriver/devtools/v84/service_worker.rb +118 -0
 - data/lib/selenium/webdriver/devtools/v84/storage.rb +97 -0
 - data/lib/selenium/webdriver/devtools/{system_info.rb → v84/system_info.rb} +17 -15
 - data/lib/selenium/webdriver/devtools/v84/target.rb +143 -0
 - data/lib/selenium/webdriver/devtools/v84/tethering.rb +57 -0
 - data/lib/selenium/webdriver/devtools/v84/tracing.rb +78 -0
 - data/lib/selenium/webdriver/devtools/v84/web_audio.rb +72 -0
 - data/lib/selenium/webdriver/devtools/v84/web_authn.rb +96 -0
 - data/lib/selenium/webdriver/devtools/v85/accessibility.rb +64 -0
 - data/lib/selenium/webdriver/devtools/v85/animation.rb +100 -0
 - data/lib/selenium/webdriver/devtools/v85/application_cache.rb +66 -0
 - data/lib/selenium/webdriver/devtools/v85/audits.rb +63 -0
 - data/lib/selenium/webdriver/devtools/v85/background_service.rb +69 -0
 - data/lib/selenium/webdriver/devtools/v85/browser.rb +125 -0
 - data/lib/selenium/webdriver/devtools/v85/cache_storage.rb +75 -0
 - data/lib/selenium/webdriver/devtools/v85/cast.rb +72 -0
 - data/lib/selenium/webdriver/devtools/v85/console.rb +59 -0
 - data/lib/selenium/webdriver/devtools/v85/css.rb +167 -0
 - data/lib/selenium/webdriver/devtools/v85/database.rb +66 -0
 - data/lib/selenium/webdriver/devtools/v85/debugger.rb +231 -0
 - data/lib/selenium/webdriver/devtools/v85/device_orientation.rb +55 -0
 - data/lib/selenium/webdriver/devtools/v85/dom.rb +322 -0
 - data/lib/selenium/webdriver/devtools/v85/dom_debugger.rb +95 -0
 - data/lib/selenium/webdriver/devtools/v85/dom_snapshot.rb +67 -0
 - data/lib/selenium/webdriver/devtools/v85/dom_storage.rb +81 -0
 - data/lib/selenium/webdriver/devtools/v85/emulation.rb +182 -0
 - data/lib/selenium/webdriver/devtools/v85/fetch.rb +99 -0
 - data/lib/selenium/webdriver/devtools/v85/headless_experimental.rb +63 -0
 - data/lib/selenium/webdriver/devtools/v85/heap_profiler.rb +109 -0
 - data/lib/selenium/webdriver/devtools/v85/indexed_db.rb +102 -0
 - data/lib/selenium/webdriver/devtools/v85/input.rb +143 -0
 - data/lib/selenium/webdriver/devtools/v85/inspector.rb +57 -0
 - data/lib/selenium/webdriver/devtools/{log.rb → v85/io.rb} +33 -38
 - data/lib/selenium/webdriver/devtools/v85/layer_tree.rb +97 -0
 - data/lib/selenium/webdriver/devtools/v85/log.rb +68 -0
 - data/lib/selenium/webdriver/devtools/v85/media.rb +59 -0
 - data/lib/selenium/webdriver/devtools/v85/memory.rb +88 -0
 - data/lib/selenium/webdriver/devtools/v85/network.rb +230 -0
 - data/lib/selenium/webdriver/devtools/v85/overlay.rb +160 -0
 - data/lib/selenium/webdriver/devtools/v85/page.rb +376 -0
 - data/lib/selenium/webdriver/devtools/v85/performance.rb +65 -0
 - data/lib/selenium/webdriver/devtools/v85/profiler.rb +113 -0
 - data/lib/selenium/webdriver/devtools/v85/runtime.rb +196 -0
 - data/lib/selenium/webdriver/devtools/v85/schema.rb +48 -0
 - data/lib/selenium/webdriver/devtools/v85/security.rb +73 -0
 - data/lib/selenium/webdriver/devtools/v85/service_worker.rb +118 -0
 - data/lib/selenium/webdriver/devtools/v85/storage.rb +97 -0
 - data/lib/selenium/webdriver/devtools/{console.rb → v85/system_info.rb} +19 -24
 - data/lib/selenium/webdriver/devtools/v85/target.rb +145 -0
 - data/lib/selenium/webdriver/devtools/v85/tethering.rb +57 -0
 - data/lib/selenium/webdriver/devtools/v85/tracing.rb +78 -0
 - data/lib/selenium/webdriver/devtools/v85/web_audio.rb +72 -0
 - data/lib/selenium/webdriver/devtools/v85/web_authn.rb +96 -0
 - data/lib/selenium/webdriver/devtools/v86/accessibility.rb +64 -0
 - data/lib/selenium/webdriver/devtools/v86/animation.rb +100 -0
 - data/lib/selenium/webdriver/devtools/v86/application_cache.rb +66 -0
 - data/lib/selenium/webdriver/devtools/v86/audits.rb +63 -0
 - data/lib/selenium/webdriver/devtools/v86/background_service.rb +69 -0
 - data/lib/selenium/webdriver/devtools/v86/browser.rb +125 -0
 - data/lib/selenium/webdriver/devtools/v86/cache_storage.rb +75 -0
 - data/lib/selenium/webdriver/devtools/v86/cast.rb +72 -0
 - data/lib/selenium/webdriver/devtools/v86/console.rb +59 -0
 - data/lib/selenium/webdriver/devtools/v86/css.rb +181 -0
 - data/lib/selenium/webdriver/devtools/v86/database.rb +66 -0
 - data/lib/selenium/webdriver/devtools/v86/debugger.rb +233 -0
 - data/lib/selenium/webdriver/devtools/v86/device_orientation.rb +55 -0
 - data/lib/selenium/webdriver/devtools/v86/dom.rb +329 -0
 - data/lib/selenium/webdriver/devtools/v86/dom_debugger.rb +95 -0
 - data/lib/selenium/webdriver/devtools/v86/dom_snapshot.rb +67 -0
 - data/lib/selenium/webdriver/devtools/v86/dom_storage.rb +81 -0
 - data/lib/selenium/webdriver/devtools/v86/emulation.rb +193 -0
 - data/lib/selenium/webdriver/devtools/v86/fetch.rb +99 -0
 - data/lib/selenium/webdriver/devtools/v86/headless_experimental.rb +63 -0
 - data/lib/selenium/webdriver/devtools/v86/heap_profiler.rb +109 -0
 - data/lib/selenium/webdriver/devtools/v86/indexed_db.rb +102 -0
 - data/lib/selenium/webdriver/devtools/v86/input.rb +143 -0
 - data/lib/selenium/webdriver/devtools/v86/inspector.rb +57 -0
 - data/lib/selenium/webdriver/devtools/v86/io.rb +61 -0
 - data/lib/selenium/webdriver/devtools/v86/layer_tree.rb +97 -0
 - data/lib/selenium/webdriver/devtools/v86/log.rb +68 -0
 - data/lib/selenium/webdriver/devtools/v86/media.rb +59 -0
 - data/lib/selenium/webdriver/devtools/v86/memory.rb +88 -0
 - data/lib/selenium/webdriver/devtools/v86/network.rb +235 -0
 - data/lib/selenium/webdriver/devtools/v86/overlay.rb +183 -0
 - data/lib/selenium/webdriver/devtools/v86/page.rb +376 -0
 - data/lib/selenium/webdriver/devtools/v86/performance.rb +65 -0
 - data/lib/selenium/webdriver/devtools/v86/profiler.rb +113 -0
 - data/lib/selenium/webdriver/devtools/v86/runtime.rb +196 -0
 - data/lib/selenium/webdriver/devtools/v86/schema.rb +48 -0
 - data/lib/selenium/webdriver/devtools/v86/security.rb +73 -0
 - data/lib/selenium/webdriver/devtools/v86/service_worker.rb +118 -0
 - data/lib/selenium/webdriver/devtools/v86/storage.rb +97 -0
 - data/lib/selenium/webdriver/devtools/{tethering.rb → v86/system_info.rb} +19 -22
 - data/lib/selenium/webdriver/devtools/v86/target.rb +145 -0
 - data/lib/selenium/webdriver/devtools/v86/tethering.rb +57 -0
 - data/lib/selenium/webdriver/devtools/v86/tracing.rb +78 -0
 - data/lib/selenium/webdriver/devtools/v86/web_audio.rb +72 -0
 - data/lib/selenium/webdriver/devtools/v86/web_authn.rb +102 -0
 - data/lib/selenium/webdriver/devtools/v87/accessibility.rb +73 -0
 - data/lib/selenium/webdriver/devtools/v87/animation.rb +100 -0
 - data/lib/selenium/webdriver/devtools/v87/application_cache.rb +66 -0
 - data/lib/selenium/webdriver/devtools/v87/audits.rb +63 -0
 - data/lib/selenium/webdriver/devtools/v87/background_service.rb +69 -0
 - data/lib/selenium/webdriver/devtools/v87/browser.rb +125 -0
 - data/lib/selenium/webdriver/devtools/v87/cache_storage.rb +75 -0
 - data/lib/selenium/webdriver/devtools/v87/cast.rb +72 -0
 - data/lib/selenium/webdriver/devtools/v87/console.rb +59 -0
 - data/lib/selenium/webdriver/devtools/v87/css.rb +181 -0
 - data/lib/selenium/webdriver/devtools/v87/database.rb +66 -0
 - data/lib/selenium/webdriver/devtools/v87/debugger.rb +233 -0
 - data/lib/selenium/webdriver/devtools/v87/device_orientation.rb +55 -0
 - data/lib/selenium/webdriver/devtools/v87/dom.rb +329 -0
 - data/lib/selenium/webdriver/devtools/v87/dom_debugger.rb +95 -0
 - data/lib/selenium/webdriver/devtools/v87/dom_snapshot.rb +67 -0
 - data/lib/selenium/webdriver/devtools/v87/dom_storage.rb +81 -0
 - data/lib/selenium/webdriver/devtools/v87/emulation.rb +193 -0
 - data/lib/selenium/webdriver/devtools/v87/fetch.rb +99 -0
 - data/lib/selenium/webdriver/devtools/v87/headless_experimental.rb +63 -0
 - data/lib/selenium/webdriver/devtools/v87/heap_profiler.rb +109 -0
 - data/lib/selenium/webdriver/devtools/v87/indexed_db.rb +102 -0
 - data/lib/selenium/webdriver/devtools/v87/input.rb +143 -0
 - data/lib/selenium/webdriver/devtools/v87/inspector.rb +57 -0
 - data/lib/selenium/webdriver/devtools/v87/io.rb +61 -0
 - data/lib/selenium/webdriver/devtools/v87/layer_tree.rb +97 -0
 - data/lib/selenium/webdriver/devtools/v87/log.rb +68 -0
 - data/lib/selenium/webdriver/devtools/v87/media.rb +59 -0
 - data/lib/selenium/webdriver/devtools/v87/memory.rb +88 -0
 - data/lib/selenium/webdriver/devtools/v87/network.rb +247 -0
 - data/lib/selenium/webdriver/devtools/v87/overlay.rb +183 -0
 - data/lib/selenium/webdriver/devtools/v87/page.rb +376 -0
 - data/lib/selenium/webdriver/devtools/v87/performance.rb +65 -0
 - data/lib/selenium/webdriver/devtools/v87/profiler.rb +125 -0
 - data/lib/selenium/webdriver/devtools/v87/runtime.rb +196 -0
 - data/lib/selenium/webdriver/devtools/v87/schema.rb +48 -0
 - data/lib/selenium/webdriver/devtools/v87/security.rb +73 -0
 - data/lib/selenium/webdriver/devtools/v87/service_worker.rb +118 -0
 - data/lib/selenium/webdriver/devtools/v87/storage.rb +97 -0
 - data/lib/selenium/webdriver/devtools/v87/system_info.rb +52 -0
 - data/lib/selenium/webdriver/devtools/v87/target.rb +145 -0
 - data/lib/selenium/webdriver/devtools/v87/tethering.rb +57 -0
 - data/lib/selenium/webdriver/devtools/v87/tracing.rb +78 -0
 - data/lib/selenium/webdriver/devtools/v87/web_audio.rb +72 -0
 - data/lib/selenium/webdriver/devtools/v87/web_authn.rb +102 -0
 - data/lib/selenium/webdriver/edge.rb +2 -2
 - data/lib/selenium/webdriver/edge_chrome/driver.rb +6 -0
 - data/lib/selenium/webdriver/edge_chrome/options.rb +2 -1
 - data/lib/selenium/webdriver/edge_html/driver.rb +1 -2
 - data/lib/selenium/webdriver/firefox/driver.rb +0 -1
 - data/lib/selenium/webdriver/ie/driver.rb +0 -1
 - data/lib/selenium/webdriver/ie/options.rb +1 -1
 - data/lib/selenium/webdriver/remote/bridge.rb +4 -0
 - data/lib/selenium/webdriver/remote/capabilities.rb +4 -2
 - data/lib/selenium/webdriver/remote/driver.rb +0 -1
 - data/lib/selenium/webdriver/remote/http/default.rb +1 -2
 - data/lib/selenium/webdriver/safari.rb +7 -0
 - data/lib/selenium/webdriver/safari/driver.rb +0 -1
 - data/lib/selenium/webdriver/version.rb +1 -1
 - data/selenium-webdriver.gemspec +3 -3
 - metadata +193 -52
 - data/lib/selenium/webdriver/devtools/accessibility.rb +0 -62
 - data/lib/selenium/webdriver/devtools/animation.rb +0 -98
 - data/lib/selenium/webdriver/devtools/application_cache.rb +0 -64
 - data/lib/selenium/webdriver/devtools/background_service.rb +0 -67
 - data/lib/selenium/webdriver/devtools/browser.rb +0 -123
 - data/lib/selenium/webdriver/devtools/cache_storage.rb +0 -73
 - data/lib/selenium/webdriver/devtools/cast.rb +0 -70
 - data/lib/selenium/webdriver/devtools/css.rb +0 -165
 - data/lib/selenium/webdriver/devtools/debugger.rb +0 -229
 - data/lib/selenium/webdriver/devtools/dom.rb +0 -320
 - data/lib/selenium/webdriver/devtools/domdebugger.rb +0 -93
 - data/lib/selenium/webdriver/devtools/domsnapshot.rb +0 -65
 - data/lib/selenium/webdriver/devtools/domstorage.rb +0 -79
 - data/lib/selenium/webdriver/devtools/emulation.rb +0 -180
 - data/lib/selenium/webdriver/devtools/fetch.rb +0 -97
 - data/lib/selenium/webdriver/devtools/headless_experimental.rb +0 -61
 - data/lib/selenium/webdriver/devtools/heap_profiler.rb +0 -107
 - data/lib/selenium/webdriver/devtools/indexed_db.rb +0 -100
 - data/lib/selenium/webdriver/devtools/input.rb +0 -140
 - data/lib/selenium/webdriver/devtools/layer_tree.rb +0 -95
 - data/lib/selenium/webdriver/devtools/memory.rb +0 -86
 - data/lib/selenium/webdriver/devtools/network.rb +0 -228
 - data/lib/selenium/webdriver/devtools/overlay.rb +0 -157
 - data/lib/selenium/webdriver/devtools/page.rb +0 -374
 - data/lib/selenium/webdriver/devtools/profiler.rb +0 -111
 - data/lib/selenium/webdriver/devtools/runtime.rb +0 -193
 - data/lib/selenium/webdriver/devtools/security.rb +0 -71
 - data/lib/selenium/webdriver/devtools/service_worker.rb +0 -116
 - data/lib/selenium/webdriver/devtools/storage.rb +0 -95
 - data/lib/selenium/webdriver/devtools/target.rb +0 -141
 - data/lib/selenium/webdriver/devtools/tracing.rb +0 -76
 - data/lib/selenium/webdriver/devtools/web_audio.rb +0 -70
 - data/lib/selenium/webdriver/devtools/web_authn.rb +0 -94
 - data/lib/selenium/webdriver/support/cdp_client_generator.rb +0 -77
 
| 
         @@ -0,0 +1,67 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # frozen_string_literal: true
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            # Licensed to the Software Freedom Conservancy (SFC) under one
         
     | 
| 
      
 4 
     | 
    
         
            +
            # or more contributor license agreements.  See the NOTICE file
         
     | 
| 
      
 5 
     | 
    
         
            +
            # distributed with this work for additional information
         
     | 
| 
      
 6 
     | 
    
         
            +
            # regarding copyright ownership.  The SFC licenses this file
         
     | 
| 
      
 7 
     | 
    
         
            +
            # to you under the Apache License, Version 2.0 (the
         
     | 
| 
      
 8 
     | 
    
         
            +
            # "License"); you may not use this file except in compliance
         
     | 
| 
      
 9 
     | 
    
         
            +
            # with the License.  You may obtain a copy of the License at
         
     | 
| 
      
 10 
     | 
    
         
            +
            #
         
     | 
| 
      
 11 
     | 
    
         
            +
            #   http://www.apache.org/licenses/LICENSE-2.0
         
     | 
| 
      
 12 
     | 
    
         
            +
            #
         
     | 
| 
      
 13 
     | 
    
         
            +
            # Unless required by applicable law or agreed to in writing,
         
     | 
| 
      
 14 
     | 
    
         
            +
            # software distributed under the License is distributed on an
         
     | 
| 
      
 15 
     | 
    
         
            +
            # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
         
     | 
| 
      
 16 
     | 
    
         
            +
            # KIND, either express or implied.  See the License for the
         
     | 
| 
      
 17 
     | 
    
         
            +
            # specific language governing permissions and limitations
         
     | 
| 
      
 18 
     | 
    
         
            +
            # under the License.
         
     | 
| 
      
 19 
     | 
    
         
            +
             
     | 
| 
      
 20 
     | 
    
         
            +
            # This file is automatically generated. Any changes will be lost!
         
     | 
| 
      
 21 
     | 
    
         
            +
            module Selenium
         
     | 
| 
      
 22 
     | 
    
         
            +
              module WebDriver
         
     | 
| 
      
 23 
     | 
    
         
            +
                class DevTools
         
     | 
| 
      
 24 
     | 
    
         
            +
                  def dom_snapshot
         
     | 
| 
      
 25 
     | 
    
         
            +
                    @dom_snapshot ||= V84::DOMSnapshot.new(self)
         
     | 
| 
      
 26 
     | 
    
         
            +
                  end
         
     | 
| 
      
 27 
     | 
    
         
            +
             
     | 
| 
      
 28 
     | 
    
         
            +
                  module V84
         
     | 
| 
      
 29 
     | 
    
         
            +
                    class DOMSnapshot
         
     | 
| 
      
 30 
     | 
    
         
            +
             
     | 
| 
      
 31 
     | 
    
         
            +
                      def initialize(devtools)
         
     | 
| 
      
 32 
     | 
    
         
            +
                        @devtools = devtools
         
     | 
| 
      
 33 
     | 
    
         
            +
                      end
         
     | 
| 
      
 34 
     | 
    
         
            +
             
     | 
| 
      
 35 
     | 
    
         
            +
                      def on(event, &block)
         
     | 
| 
      
 36 
     | 
    
         
            +
                        event = EVENTS[event] if event.is_a?(Symbol)
         
     | 
| 
      
 37 
     | 
    
         
            +
                        @devtools.callbacks["DOMSnapshot.#{event}"] << block
         
     | 
| 
      
 38 
     | 
    
         
            +
                      end
         
     | 
| 
      
 39 
     | 
    
         
            +
             
     | 
| 
      
 40 
     | 
    
         
            +
                      def disable
         
     | 
| 
      
 41 
     | 
    
         
            +
                        @devtools.send_cmd('DOMSnapshot.disable')
         
     | 
| 
      
 42 
     | 
    
         
            +
                      end
         
     | 
| 
      
 43 
     | 
    
         
            +
             
     | 
| 
      
 44 
     | 
    
         
            +
                      def enable
         
     | 
| 
      
 45 
     | 
    
         
            +
                        @devtools.send_cmd('DOMSnapshot.enable')
         
     | 
| 
      
 46 
     | 
    
         
            +
                      end
         
     | 
| 
      
 47 
     | 
    
         
            +
             
     | 
| 
      
 48 
     | 
    
         
            +
                      def get_snapshot(computed_style_whitelist:, include_event_listeners: nil, include_paint_order: nil, include_user_agent_shadow_tree: nil)
         
     | 
| 
      
 49 
     | 
    
         
            +
                        @devtools.send_cmd('DOMSnapshot.getSnapshot',
         
     | 
| 
      
 50 
     | 
    
         
            +
                                           computedStyleWhitelist: computed_style_whitelist,
         
     | 
| 
      
 51 
     | 
    
         
            +
                                           includeEventListeners: include_event_listeners,
         
     | 
| 
      
 52 
     | 
    
         
            +
                                           includePaintOrder: include_paint_order,
         
     | 
| 
      
 53 
     | 
    
         
            +
                                           includeUserAgentShadowTree: include_user_agent_shadow_tree)
         
     | 
| 
      
 54 
     | 
    
         
            +
                      end
         
     | 
| 
      
 55 
     | 
    
         
            +
             
     | 
| 
      
 56 
     | 
    
         
            +
                      def capture_snapshot(computed_styles:, include_paint_order: nil, include_dom_rects: nil)
         
     | 
| 
      
 57 
     | 
    
         
            +
                        @devtools.send_cmd('DOMSnapshot.captureSnapshot',
         
     | 
| 
      
 58 
     | 
    
         
            +
                                           computedStyles: computed_styles,
         
     | 
| 
      
 59 
     | 
    
         
            +
                                           includePaintOrder: include_paint_order,
         
     | 
| 
      
 60 
     | 
    
         
            +
                                           includeDOMRects: include_dom_rects)
         
     | 
| 
      
 61 
     | 
    
         
            +
                      end
         
     | 
| 
      
 62 
     | 
    
         
            +
             
     | 
| 
      
 63 
     | 
    
         
            +
                    end # V84
         
     | 
| 
      
 64 
     | 
    
         
            +
                  end # DOMSnapshot
         
     | 
| 
      
 65 
     | 
    
         
            +
                end # DevTools
         
     | 
| 
      
 66 
     | 
    
         
            +
              end # WebDriver
         
     | 
| 
      
 67 
     | 
    
         
            +
            end # Selenium
         
     | 
| 
         @@ -0,0 +1,81 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # frozen_string_literal: true
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            # Licensed to the Software Freedom Conservancy (SFC) under one
         
     | 
| 
      
 4 
     | 
    
         
            +
            # or more contributor license agreements.  See the NOTICE file
         
     | 
| 
      
 5 
     | 
    
         
            +
            # distributed with this work for additional information
         
     | 
| 
      
 6 
     | 
    
         
            +
            # regarding copyright ownership.  The SFC licenses this file
         
     | 
| 
      
 7 
     | 
    
         
            +
            # to you under the Apache License, Version 2.0 (the
         
     | 
| 
      
 8 
     | 
    
         
            +
            # "License"); you may not use this file except in compliance
         
     | 
| 
      
 9 
     | 
    
         
            +
            # with the License.  You may obtain a copy of the License at
         
     | 
| 
      
 10 
     | 
    
         
            +
            #
         
     | 
| 
      
 11 
     | 
    
         
            +
            #   http://www.apache.org/licenses/LICENSE-2.0
         
     | 
| 
      
 12 
     | 
    
         
            +
            #
         
     | 
| 
      
 13 
     | 
    
         
            +
            # Unless required by applicable law or agreed to in writing,
         
     | 
| 
      
 14 
     | 
    
         
            +
            # software distributed under the License is distributed on an
         
     | 
| 
      
 15 
     | 
    
         
            +
            # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
         
     | 
| 
      
 16 
     | 
    
         
            +
            # KIND, either express or implied.  See the License for the
         
     | 
| 
      
 17 
     | 
    
         
            +
            # specific language governing permissions and limitations
         
     | 
| 
      
 18 
     | 
    
         
            +
            # under the License.
         
     | 
| 
      
 19 
     | 
    
         
            +
             
     | 
| 
      
 20 
     | 
    
         
            +
            # This file is automatically generated. Any changes will be lost!
         
     | 
| 
      
 21 
     | 
    
         
            +
            module Selenium
         
     | 
| 
      
 22 
     | 
    
         
            +
              module WebDriver
         
     | 
| 
      
 23 
     | 
    
         
            +
                class DevTools
         
     | 
| 
      
 24 
     | 
    
         
            +
                  def dom_storage
         
     | 
| 
      
 25 
     | 
    
         
            +
                    @dom_storage ||= V84::DOMStorage.new(self)
         
     | 
| 
      
 26 
     | 
    
         
            +
                  end
         
     | 
| 
      
 27 
     | 
    
         
            +
             
     | 
| 
      
 28 
     | 
    
         
            +
                  module V84
         
     | 
| 
      
 29 
     | 
    
         
            +
                    class DOMStorage
         
     | 
| 
      
 30 
     | 
    
         
            +
                      EVENTS = {
         
     | 
| 
      
 31 
     | 
    
         
            +
                        dom_storage_item_added: 'domStorageItemAdded',
         
     | 
| 
      
 32 
     | 
    
         
            +
                        dom_storage_item_removed: 'domStorageItemRemoved',
         
     | 
| 
      
 33 
     | 
    
         
            +
                        dom_storage_item_updated: 'domStorageItemUpdated',
         
     | 
| 
      
 34 
     | 
    
         
            +
                        dom_storage_items_cleared: 'domStorageItemsCleared',
         
     | 
| 
      
 35 
     | 
    
         
            +
                      }.freeze
         
     | 
| 
      
 36 
     | 
    
         
            +
             
     | 
| 
      
 37 
     | 
    
         
            +
                      def initialize(devtools)
         
     | 
| 
      
 38 
     | 
    
         
            +
                        @devtools = devtools
         
     | 
| 
      
 39 
     | 
    
         
            +
                      end
         
     | 
| 
      
 40 
     | 
    
         
            +
             
     | 
| 
      
 41 
     | 
    
         
            +
                      def on(event, &block)
         
     | 
| 
      
 42 
     | 
    
         
            +
                        event = EVENTS[event] if event.is_a?(Symbol)
         
     | 
| 
      
 43 
     | 
    
         
            +
                        @devtools.callbacks["DOMStorage.#{event}"] << block
         
     | 
| 
      
 44 
     | 
    
         
            +
                      end
         
     | 
| 
      
 45 
     | 
    
         
            +
             
     | 
| 
      
 46 
     | 
    
         
            +
                      def clear(storage_id:)
         
     | 
| 
      
 47 
     | 
    
         
            +
                        @devtools.send_cmd('DOMStorage.clear',
         
     | 
| 
      
 48 
     | 
    
         
            +
                                           storageId: storage_id)
         
     | 
| 
      
 49 
     | 
    
         
            +
                      end
         
     | 
| 
      
 50 
     | 
    
         
            +
             
     | 
| 
      
 51 
     | 
    
         
            +
                      def disable
         
     | 
| 
      
 52 
     | 
    
         
            +
                        @devtools.send_cmd('DOMStorage.disable')
         
     | 
| 
      
 53 
     | 
    
         
            +
                      end
         
     | 
| 
      
 54 
     | 
    
         
            +
             
     | 
| 
      
 55 
     | 
    
         
            +
                      def enable
         
     | 
| 
      
 56 
     | 
    
         
            +
                        @devtools.send_cmd('DOMStorage.enable')
         
     | 
| 
      
 57 
     | 
    
         
            +
                      end
         
     | 
| 
      
 58 
     | 
    
         
            +
             
     | 
| 
      
 59 
     | 
    
         
            +
                      def get_dom_storage_items(storage_id:)
         
     | 
| 
      
 60 
     | 
    
         
            +
                        @devtools.send_cmd('DOMStorage.getDOMStorageItems',
         
     | 
| 
      
 61 
     | 
    
         
            +
                                           storageId: storage_id)
         
     | 
| 
      
 62 
     | 
    
         
            +
                      end
         
     | 
| 
      
 63 
     | 
    
         
            +
             
     | 
| 
      
 64 
     | 
    
         
            +
                      def remove_dom_storage_item(storage_id:, key:)
         
     | 
| 
      
 65 
     | 
    
         
            +
                        @devtools.send_cmd('DOMStorage.removeDOMStorageItem',
         
     | 
| 
      
 66 
     | 
    
         
            +
                                           storageId: storage_id,
         
     | 
| 
      
 67 
     | 
    
         
            +
                                           key: key)
         
     | 
| 
      
 68 
     | 
    
         
            +
                      end
         
     | 
| 
      
 69 
     | 
    
         
            +
             
     | 
| 
      
 70 
     | 
    
         
            +
                      def set_dom_storage_item(storage_id:, key:, value:)
         
     | 
| 
      
 71 
     | 
    
         
            +
                        @devtools.send_cmd('DOMStorage.setDOMStorageItem',
         
     | 
| 
      
 72 
     | 
    
         
            +
                                           storageId: storage_id,
         
     | 
| 
      
 73 
     | 
    
         
            +
                                           key: key,
         
     | 
| 
      
 74 
     | 
    
         
            +
                                           value: value)
         
     | 
| 
      
 75 
     | 
    
         
            +
                      end
         
     | 
| 
      
 76 
     | 
    
         
            +
             
     | 
| 
      
 77 
     | 
    
         
            +
                    end # V84
         
     | 
| 
      
 78 
     | 
    
         
            +
                  end # DOMStorage
         
     | 
| 
      
 79 
     | 
    
         
            +
                end # DevTools
         
     | 
| 
      
 80 
     | 
    
         
            +
              end # WebDriver
         
     | 
| 
      
 81 
     | 
    
         
            +
            end # Selenium
         
     | 
| 
         @@ -0,0 +1,182 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # frozen_string_literal: true
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            # Licensed to the Software Freedom Conservancy (SFC) under one
         
     | 
| 
      
 4 
     | 
    
         
            +
            # or more contributor license agreements.  See the NOTICE file
         
     | 
| 
      
 5 
     | 
    
         
            +
            # distributed with this work for additional information
         
     | 
| 
      
 6 
     | 
    
         
            +
            # regarding copyright ownership.  The SFC licenses this file
         
     | 
| 
      
 7 
     | 
    
         
            +
            # to you under the Apache License, Version 2.0 (the
         
     | 
| 
      
 8 
     | 
    
         
            +
            # "License"); you may not use this file except in compliance
         
     | 
| 
      
 9 
     | 
    
         
            +
            # with the License.  You may obtain a copy of the License at
         
     | 
| 
      
 10 
     | 
    
         
            +
            #
         
     | 
| 
      
 11 
     | 
    
         
            +
            #   http://www.apache.org/licenses/LICENSE-2.0
         
     | 
| 
      
 12 
     | 
    
         
            +
            #
         
     | 
| 
      
 13 
     | 
    
         
            +
            # Unless required by applicable law or agreed to in writing,
         
     | 
| 
      
 14 
     | 
    
         
            +
            # software distributed under the License is distributed on an
         
     | 
| 
      
 15 
     | 
    
         
            +
            # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
         
     | 
| 
      
 16 
     | 
    
         
            +
            # KIND, either express or implied.  See the License for the
         
     | 
| 
      
 17 
     | 
    
         
            +
            # specific language governing permissions and limitations
         
     | 
| 
      
 18 
     | 
    
         
            +
            # under the License.
         
     | 
| 
      
 19 
     | 
    
         
            +
             
     | 
| 
      
 20 
     | 
    
         
            +
            # This file is automatically generated. Any changes will be lost!
         
     | 
| 
      
 21 
     | 
    
         
            +
            module Selenium
         
     | 
| 
      
 22 
     | 
    
         
            +
              module WebDriver
         
     | 
| 
      
 23 
     | 
    
         
            +
                class DevTools
         
     | 
| 
      
 24 
     | 
    
         
            +
                  def emulation
         
     | 
| 
      
 25 
     | 
    
         
            +
                    @emulation ||= V84::Emulation.new(self)
         
     | 
| 
      
 26 
     | 
    
         
            +
                  end
         
     | 
| 
      
 27 
     | 
    
         
            +
             
     | 
| 
      
 28 
     | 
    
         
            +
                  module V84
         
     | 
| 
      
 29 
     | 
    
         
            +
                    class Emulation
         
     | 
| 
      
 30 
     | 
    
         
            +
                      EVENTS = {
         
     | 
| 
      
 31 
     | 
    
         
            +
                        virtual_time_budget_expired: 'virtualTimeBudgetExpired',
         
     | 
| 
      
 32 
     | 
    
         
            +
                      }.freeze
         
     | 
| 
      
 33 
     | 
    
         
            +
             
     | 
| 
      
 34 
     | 
    
         
            +
                      def initialize(devtools)
         
     | 
| 
      
 35 
     | 
    
         
            +
                        @devtools = devtools
         
     | 
| 
      
 36 
     | 
    
         
            +
                      end
         
     | 
| 
      
 37 
     | 
    
         
            +
             
     | 
| 
      
 38 
     | 
    
         
            +
                      def on(event, &block)
         
     | 
| 
      
 39 
     | 
    
         
            +
                        event = EVENTS[event] if event.is_a?(Symbol)
         
     | 
| 
      
 40 
     | 
    
         
            +
                        @devtools.callbacks["Emulation.#{event}"] << block
         
     | 
| 
      
 41 
     | 
    
         
            +
                      end
         
     | 
| 
      
 42 
     | 
    
         
            +
             
     | 
| 
      
 43 
     | 
    
         
            +
                      def can_emulate
         
     | 
| 
      
 44 
     | 
    
         
            +
                        @devtools.send_cmd('Emulation.canEmulate')
         
     | 
| 
      
 45 
     | 
    
         
            +
                      end
         
     | 
| 
      
 46 
     | 
    
         
            +
             
     | 
| 
      
 47 
     | 
    
         
            +
                      def clear_device_metrics_override
         
     | 
| 
      
 48 
     | 
    
         
            +
                        @devtools.send_cmd('Emulation.clearDeviceMetricsOverride')
         
     | 
| 
      
 49 
     | 
    
         
            +
                      end
         
     | 
| 
      
 50 
     | 
    
         
            +
             
     | 
| 
      
 51 
     | 
    
         
            +
                      def clear_geolocation_override
         
     | 
| 
      
 52 
     | 
    
         
            +
                        @devtools.send_cmd('Emulation.clearGeolocationOverride')
         
     | 
| 
      
 53 
     | 
    
         
            +
                      end
         
     | 
| 
      
 54 
     | 
    
         
            +
             
     | 
| 
      
 55 
     | 
    
         
            +
                      def reset_page_scale_factor
         
     | 
| 
      
 56 
     | 
    
         
            +
                        @devtools.send_cmd('Emulation.resetPageScaleFactor')
         
     | 
| 
      
 57 
     | 
    
         
            +
                      end
         
     | 
| 
      
 58 
     | 
    
         
            +
             
     | 
| 
      
 59 
     | 
    
         
            +
                      def set_focus_emulation_enabled(enabled:)
         
     | 
| 
      
 60 
     | 
    
         
            +
                        @devtools.send_cmd('Emulation.setFocusEmulationEnabled',
         
     | 
| 
      
 61 
     | 
    
         
            +
                                           enabled: enabled)
         
     | 
| 
      
 62 
     | 
    
         
            +
                      end
         
     | 
| 
      
 63 
     | 
    
         
            +
             
     | 
| 
      
 64 
     | 
    
         
            +
                      def set_cpu_throttling_rate(rate:)
         
     | 
| 
      
 65 
     | 
    
         
            +
                        @devtools.send_cmd('Emulation.setCPUThrottlingRate',
         
     | 
| 
      
 66 
     | 
    
         
            +
                                           rate: rate)
         
     | 
| 
      
 67 
     | 
    
         
            +
                      end
         
     | 
| 
      
 68 
     | 
    
         
            +
             
     | 
| 
      
 69 
     | 
    
         
            +
                      def set_default_background_color_override(color: nil)
         
     | 
| 
      
 70 
     | 
    
         
            +
                        @devtools.send_cmd('Emulation.setDefaultBackgroundColorOverride',
         
     | 
| 
      
 71 
     | 
    
         
            +
                                           color: color)
         
     | 
| 
      
 72 
     | 
    
         
            +
                      end
         
     | 
| 
      
 73 
     | 
    
         
            +
             
     | 
| 
      
 74 
     | 
    
         
            +
                      def set_device_metrics_override(width:, height:, device_scale_factor:, mobile:, scale: nil, screen_width: nil, screen_height: nil, position_x: nil, position_y: nil, dont_set_visible_size: nil, screen_orientation: nil, viewport: nil)
         
     | 
| 
      
 75 
     | 
    
         
            +
                        @devtools.send_cmd('Emulation.setDeviceMetricsOverride',
         
     | 
| 
      
 76 
     | 
    
         
            +
                                           width: width,
         
     | 
| 
      
 77 
     | 
    
         
            +
                                           height: height,
         
     | 
| 
      
 78 
     | 
    
         
            +
                                           deviceScaleFactor: device_scale_factor,
         
     | 
| 
      
 79 
     | 
    
         
            +
                                           mobile: mobile,
         
     | 
| 
      
 80 
     | 
    
         
            +
                                           scale: scale,
         
     | 
| 
      
 81 
     | 
    
         
            +
                                           screenWidth: screen_width,
         
     | 
| 
      
 82 
     | 
    
         
            +
                                           screenHeight: screen_height,
         
     | 
| 
      
 83 
     | 
    
         
            +
                                           positionX: position_x,
         
     | 
| 
      
 84 
     | 
    
         
            +
                                           positionY: position_y,
         
     | 
| 
      
 85 
     | 
    
         
            +
                                           dontSetVisibleSize: dont_set_visible_size,
         
     | 
| 
      
 86 
     | 
    
         
            +
                                           screenOrientation: screen_orientation,
         
     | 
| 
      
 87 
     | 
    
         
            +
                                           viewport: viewport)
         
     | 
| 
      
 88 
     | 
    
         
            +
                      end
         
     | 
| 
      
 89 
     | 
    
         
            +
             
     | 
| 
      
 90 
     | 
    
         
            +
                      def set_scrollbars_hidden(hidden:)
         
     | 
| 
      
 91 
     | 
    
         
            +
                        @devtools.send_cmd('Emulation.setScrollbarsHidden',
         
     | 
| 
      
 92 
     | 
    
         
            +
                                           hidden: hidden)
         
     | 
| 
      
 93 
     | 
    
         
            +
                      end
         
     | 
| 
      
 94 
     | 
    
         
            +
             
     | 
| 
      
 95 
     | 
    
         
            +
                      def set_document_cookie_disabled(disabled:)
         
     | 
| 
      
 96 
     | 
    
         
            +
                        @devtools.send_cmd('Emulation.setDocumentCookieDisabled',
         
     | 
| 
      
 97 
     | 
    
         
            +
                                           disabled: disabled)
         
     | 
| 
      
 98 
     | 
    
         
            +
                      end
         
     | 
| 
      
 99 
     | 
    
         
            +
             
     | 
| 
      
 100 
     | 
    
         
            +
                      def set_emit_touch_events_for_mouse(enabled:, configuration: nil)
         
     | 
| 
      
 101 
     | 
    
         
            +
                        @devtools.send_cmd('Emulation.setEmitTouchEventsForMouse',
         
     | 
| 
      
 102 
     | 
    
         
            +
                                           enabled: enabled,
         
     | 
| 
      
 103 
     | 
    
         
            +
                                           configuration: configuration)
         
     | 
| 
      
 104 
     | 
    
         
            +
                      end
         
     | 
| 
      
 105 
     | 
    
         
            +
             
     | 
| 
      
 106 
     | 
    
         
            +
                      def set_emulated_media(media: nil, features: nil)
         
     | 
| 
      
 107 
     | 
    
         
            +
                        @devtools.send_cmd('Emulation.setEmulatedMedia',
         
     | 
| 
      
 108 
     | 
    
         
            +
                                           media: media,
         
     | 
| 
      
 109 
     | 
    
         
            +
                                           features: features)
         
     | 
| 
      
 110 
     | 
    
         
            +
                      end
         
     | 
| 
      
 111 
     | 
    
         
            +
             
     | 
| 
      
 112 
     | 
    
         
            +
                      def set_emulated_vision_deficiency(type:)
         
     | 
| 
      
 113 
     | 
    
         
            +
                        @devtools.send_cmd('Emulation.setEmulatedVisionDeficiency',
         
     | 
| 
      
 114 
     | 
    
         
            +
                                           type: type)
         
     | 
| 
      
 115 
     | 
    
         
            +
                      end
         
     | 
| 
      
 116 
     | 
    
         
            +
             
     | 
| 
      
 117 
     | 
    
         
            +
                      def set_geolocation_override(latitude: nil, longitude: nil, accuracy: nil)
         
     | 
| 
      
 118 
     | 
    
         
            +
                        @devtools.send_cmd('Emulation.setGeolocationOverride',
         
     | 
| 
      
 119 
     | 
    
         
            +
                                           latitude: latitude,
         
     | 
| 
      
 120 
     | 
    
         
            +
                                           longitude: longitude,
         
     | 
| 
      
 121 
     | 
    
         
            +
                                           accuracy: accuracy)
         
     | 
| 
      
 122 
     | 
    
         
            +
                      end
         
     | 
| 
      
 123 
     | 
    
         
            +
             
     | 
| 
      
 124 
     | 
    
         
            +
                      def set_navigator_overrides(platform:)
         
     | 
| 
      
 125 
     | 
    
         
            +
                        @devtools.send_cmd('Emulation.setNavigatorOverrides',
         
     | 
| 
      
 126 
     | 
    
         
            +
                                           platform: platform)
         
     | 
| 
      
 127 
     | 
    
         
            +
                      end
         
     | 
| 
      
 128 
     | 
    
         
            +
             
     | 
| 
      
 129 
     | 
    
         
            +
                      def set_page_scale_factor(page_scale_factor:)
         
     | 
| 
      
 130 
     | 
    
         
            +
                        @devtools.send_cmd('Emulation.setPageScaleFactor',
         
     | 
| 
      
 131 
     | 
    
         
            +
                                           pageScaleFactor: page_scale_factor)
         
     | 
| 
      
 132 
     | 
    
         
            +
                      end
         
     | 
| 
      
 133 
     | 
    
         
            +
             
     | 
| 
      
 134 
     | 
    
         
            +
                      def set_script_execution_disabled(value:)
         
     | 
| 
      
 135 
     | 
    
         
            +
                        @devtools.send_cmd('Emulation.setScriptExecutionDisabled',
         
     | 
| 
      
 136 
     | 
    
         
            +
                                           value: value)
         
     | 
| 
      
 137 
     | 
    
         
            +
                      end
         
     | 
| 
      
 138 
     | 
    
         
            +
             
     | 
| 
      
 139 
     | 
    
         
            +
                      def set_touch_emulation_enabled(enabled:, max_touch_points: nil)
         
     | 
| 
      
 140 
     | 
    
         
            +
                        @devtools.send_cmd('Emulation.setTouchEmulationEnabled',
         
     | 
| 
      
 141 
     | 
    
         
            +
                                           enabled: enabled,
         
     | 
| 
      
 142 
     | 
    
         
            +
                                           maxTouchPoints: max_touch_points)
         
     | 
| 
      
 143 
     | 
    
         
            +
                      end
         
     | 
| 
      
 144 
     | 
    
         
            +
             
     | 
| 
      
 145 
     | 
    
         
            +
                      def set_virtual_time_policy(policy:, budget: nil, max_virtual_time_task_starvation_count: nil, wait_for_navigation: nil, initial_virtual_time: nil)
         
     | 
| 
      
 146 
     | 
    
         
            +
                        @devtools.send_cmd('Emulation.setVirtualTimePolicy',
         
     | 
| 
      
 147 
     | 
    
         
            +
                                           policy: policy,
         
     | 
| 
      
 148 
     | 
    
         
            +
                                           budget: budget,
         
     | 
| 
      
 149 
     | 
    
         
            +
                                           maxVirtualTimeTaskStarvationCount: max_virtual_time_task_starvation_count,
         
     | 
| 
      
 150 
     | 
    
         
            +
                                           waitForNavigation: wait_for_navigation,
         
     | 
| 
      
 151 
     | 
    
         
            +
                                           initialVirtualTime: initial_virtual_time)
         
     | 
| 
      
 152 
     | 
    
         
            +
                      end
         
     | 
| 
      
 153 
     | 
    
         
            +
             
     | 
| 
      
 154 
     | 
    
         
            +
                      def set_locale_override(locale: nil)
         
     | 
| 
      
 155 
     | 
    
         
            +
                        @devtools.send_cmd('Emulation.setLocaleOverride',
         
     | 
| 
      
 156 
     | 
    
         
            +
                                           locale: locale)
         
     | 
| 
      
 157 
     | 
    
         
            +
                      end
         
     | 
| 
      
 158 
     | 
    
         
            +
             
     | 
| 
      
 159 
     | 
    
         
            +
                      def set_timezone_override(timezone_id:)
         
     | 
| 
      
 160 
     | 
    
         
            +
                        @devtools.send_cmd('Emulation.setTimezoneOverride',
         
     | 
| 
      
 161 
     | 
    
         
            +
                                           timezoneId: timezone_id)
         
     | 
| 
      
 162 
     | 
    
         
            +
                      end
         
     | 
| 
      
 163 
     | 
    
         
            +
             
     | 
| 
      
 164 
     | 
    
         
            +
                      def set_visible_size(width:, height:)
         
     | 
| 
      
 165 
     | 
    
         
            +
                        @devtools.send_cmd('Emulation.setVisibleSize',
         
     | 
| 
      
 166 
     | 
    
         
            +
                                           width: width,
         
     | 
| 
      
 167 
     | 
    
         
            +
                                           height: height)
         
     | 
| 
      
 168 
     | 
    
         
            +
                      end
         
     | 
| 
      
 169 
     | 
    
         
            +
             
     | 
| 
      
 170 
     | 
    
         
            +
                      def set_user_agent_override(user_agent:, accept_language: nil, platform: nil, user_agent_metadata: nil)
         
     | 
| 
      
 171 
     | 
    
         
            +
                        @devtools.send_cmd('Emulation.setUserAgentOverride',
         
     | 
| 
      
 172 
     | 
    
         
            +
                                           userAgent: user_agent,
         
     | 
| 
      
 173 
     | 
    
         
            +
                                           acceptLanguage: accept_language,
         
     | 
| 
      
 174 
     | 
    
         
            +
                                           platform: platform,
         
     | 
| 
      
 175 
     | 
    
         
            +
                                           userAgentMetadata: user_agent_metadata)
         
     | 
| 
      
 176 
     | 
    
         
            +
                      end
         
     | 
| 
      
 177 
     | 
    
         
            +
             
     | 
| 
      
 178 
     | 
    
         
            +
                    end # V84
         
     | 
| 
      
 179 
     | 
    
         
            +
                  end # Emulation
         
     | 
| 
      
 180 
     | 
    
         
            +
                end # DevTools
         
     | 
| 
      
 181 
     | 
    
         
            +
              end # WebDriver
         
     | 
| 
      
 182 
     | 
    
         
            +
            end # Selenium
         
     | 
| 
         @@ -0,0 +1,99 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # frozen_string_literal: true
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            # Licensed to the Software Freedom Conservancy (SFC) under one
         
     | 
| 
      
 4 
     | 
    
         
            +
            # or more contributor license agreements.  See the NOTICE file
         
     | 
| 
      
 5 
     | 
    
         
            +
            # distributed with this work for additional information
         
     | 
| 
      
 6 
     | 
    
         
            +
            # regarding copyright ownership.  The SFC licenses this file
         
     | 
| 
      
 7 
     | 
    
         
            +
            # to you under the Apache License, Version 2.0 (the
         
     | 
| 
      
 8 
     | 
    
         
            +
            # "License"); you may not use this file except in compliance
         
     | 
| 
      
 9 
     | 
    
         
            +
            # with the License.  You may obtain a copy of the License at
         
     | 
| 
      
 10 
     | 
    
         
            +
            #
         
     | 
| 
      
 11 
     | 
    
         
            +
            #   http://www.apache.org/licenses/LICENSE-2.0
         
     | 
| 
      
 12 
     | 
    
         
            +
            #
         
     | 
| 
      
 13 
     | 
    
         
            +
            # Unless required by applicable law or agreed to in writing,
         
     | 
| 
      
 14 
     | 
    
         
            +
            # software distributed under the License is distributed on an
         
     | 
| 
      
 15 
     | 
    
         
            +
            # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
         
     | 
| 
      
 16 
     | 
    
         
            +
            # KIND, either express or implied.  See the License for the
         
     | 
| 
      
 17 
     | 
    
         
            +
            # specific language governing permissions and limitations
         
     | 
| 
      
 18 
     | 
    
         
            +
            # under the License.
         
     | 
| 
      
 19 
     | 
    
         
            +
             
     | 
| 
      
 20 
     | 
    
         
            +
            # This file is automatically generated. Any changes will be lost!
         
     | 
| 
      
 21 
     | 
    
         
            +
            module Selenium
         
     | 
| 
      
 22 
     | 
    
         
            +
              module WebDriver
         
     | 
| 
      
 23 
     | 
    
         
            +
                class DevTools
         
     | 
| 
      
 24 
     | 
    
         
            +
                  def fetch
         
     | 
| 
      
 25 
     | 
    
         
            +
                    @fetch ||= V84::Fetch.new(self)
         
     | 
| 
      
 26 
     | 
    
         
            +
                  end
         
     | 
| 
      
 27 
     | 
    
         
            +
             
     | 
| 
      
 28 
     | 
    
         
            +
                  module V84
         
     | 
| 
      
 29 
     | 
    
         
            +
                    class Fetch
         
     | 
| 
      
 30 
     | 
    
         
            +
                      EVENTS = {
         
     | 
| 
      
 31 
     | 
    
         
            +
                        request_paused: 'requestPaused',
         
     | 
| 
      
 32 
     | 
    
         
            +
                        auth_required: 'authRequired',
         
     | 
| 
      
 33 
     | 
    
         
            +
                      }.freeze
         
     | 
| 
      
 34 
     | 
    
         
            +
             
     | 
| 
      
 35 
     | 
    
         
            +
                      def initialize(devtools)
         
     | 
| 
      
 36 
     | 
    
         
            +
                        @devtools = devtools
         
     | 
| 
      
 37 
     | 
    
         
            +
                      end
         
     | 
| 
      
 38 
     | 
    
         
            +
             
     | 
| 
      
 39 
     | 
    
         
            +
                      def on(event, &block)
         
     | 
| 
      
 40 
     | 
    
         
            +
                        event = EVENTS[event] if event.is_a?(Symbol)
         
     | 
| 
      
 41 
     | 
    
         
            +
                        @devtools.callbacks["Fetch.#{event}"] << block
         
     | 
| 
      
 42 
     | 
    
         
            +
                      end
         
     | 
| 
      
 43 
     | 
    
         
            +
             
     | 
| 
      
 44 
     | 
    
         
            +
                      def disable
         
     | 
| 
      
 45 
     | 
    
         
            +
                        @devtools.send_cmd('Fetch.disable')
         
     | 
| 
      
 46 
     | 
    
         
            +
                      end
         
     | 
| 
      
 47 
     | 
    
         
            +
             
     | 
| 
      
 48 
     | 
    
         
            +
                      def enable(patterns: nil, handle_auth_requests: nil)
         
     | 
| 
      
 49 
     | 
    
         
            +
                        @devtools.send_cmd('Fetch.enable',
         
     | 
| 
      
 50 
     | 
    
         
            +
                                           patterns: patterns,
         
     | 
| 
      
 51 
     | 
    
         
            +
                                           handleAuthRequests: handle_auth_requests)
         
     | 
| 
      
 52 
     | 
    
         
            +
                      end
         
     | 
| 
      
 53 
     | 
    
         
            +
             
     | 
| 
      
 54 
     | 
    
         
            +
                      def fail_request(request_id:, error_reason:)
         
     | 
| 
      
 55 
     | 
    
         
            +
                        @devtools.send_cmd('Fetch.failRequest',
         
     | 
| 
      
 56 
     | 
    
         
            +
                                           requestId: request_id,
         
     | 
| 
      
 57 
     | 
    
         
            +
                                           errorReason: error_reason)
         
     | 
| 
      
 58 
     | 
    
         
            +
                      end
         
     | 
| 
      
 59 
     | 
    
         
            +
             
     | 
| 
      
 60 
     | 
    
         
            +
                      def fulfill_request(request_id:, response_code:, response_headers: nil, binary_response_headers: nil, body: nil, response_phrase: nil)
         
     | 
| 
      
 61 
     | 
    
         
            +
                        @devtools.send_cmd('Fetch.fulfillRequest',
         
     | 
| 
      
 62 
     | 
    
         
            +
                                           requestId: request_id,
         
     | 
| 
      
 63 
     | 
    
         
            +
                                           responseCode: response_code,
         
     | 
| 
      
 64 
     | 
    
         
            +
                                           responseHeaders: response_headers,
         
     | 
| 
      
 65 
     | 
    
         
            +
                                           binaryResponseHeaders: binary_response_headers,
         
     | 
| 
      
 66 
     | 
    
         
            +
                                           body: body,
         
     | 
| 
      
 67 
     | 
    
         
            +
                                           responsePhrase: response_phrase)
         
     | 
| 
      
 68 
     | 
    
         
            +
                      end
         
     | 
| 
      
 69 
     | 
    
         
            +
             
     | 
| 
      
 70 
     | 
    
         
            +
                      def continue_request(request_id:, url: nil, method: nil, post_data: nil, headers: nil)
         
     | 
| 
      
 71 
     | 
    
         
            +
                        @devtools.send_cmd('Fetch.continueRequest',
         
     | 
| 
      
 72 
     | 
    
         
            +
                                           requestId: request_id,
         
     | 
| 
      
 73 
     | 
    
         
            +
                                           url: url,
         
     | 
| 
      
 74 
     | 
    
         
            +
                                           method: method,
         
     | 
| 
      
 75 
     | 
    
         
            +
                                           postData: post_data,
         
     | 
| 
      
 76 
     | 
    
         
            +
                                           headers: headers)
         
     | 
| 
      
 77 
     | 
    
         
            +
                      end
         
     | 
| 
      
 78 
     | 
    
         
            +
             
     | 
| 
      
 79 
     | 
    
         
            +
                      def continue_with_auth(request_id:, auth_challenge_response:)
         
     | 
| 
      
 80 
     | 
    
         
            +
                        @devtools.send_cmd('Fetch.continueWithAuth',
         
     | 
| 
      
 81 
     | 
    
         
            +
                                           requestId: request_id,
         
     | 
| 
      
 82 
     | 
    
         
            +
                                           authChallengeResponse: auth_challenge_response)
         
     | 
| 
      
 83 
     | 
    
         
            +
                      end
         
     | 
| 
      
 84 
     | 
    
         
            +
             
     | 
| 
      
 85 
     | 
    
         
            +
                      def get_response_body(request_id:)
         
     | 
| 
      
 86 
     | 
    
         
            +
                        @devtools.send_cmd('Fetch.getResponseBody',
         
     | 
| 
      
 87 
     | 
    
         
            +
                                           requestId: request_id)
         
     | 
| 
      
 88 
     | 
    
         
            +
                      end
         
     | 
| 
      
 89 
     | 
    
         
            +
             
     | 
| 
      
 90 
     | 
    
         
            +
                      def take_response_body_as_stream(request_id:)
         
     | 
| 
      
 91 
     | 
    
         
            +
                        @devtools.send_cmd('Fetch.takeResponseBodyAsStream',
         
     | 
| 
      
 92 
     | 
    
         
            +
                                           requestId: request_id)
         
     | 
| 
      
 93 
     | 
    
         
            +
                      end
         
     | 
| 
      
 94 
     | 
    
         
            +
             
     | 
| 
      
 95 
     | 
    
         
            +
                    end # V84
         
     | 
| 
      
 96 
     | 
    
         
            +
                  end # Fetch
         
     | 
| 
      
 97 
     | 
    
         
            +
                end # DevTools
         
     | 
| 
      
 98 
     | 
    
         
            +
              end # WebDriver
         
     | 
| 
      
 99 
     | 
    
         
            +
            end # Selenium
         
     | 
| 
         @@ -0,0 +1,63 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # frozen_string_literal: true
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            # Licensed to the Software Freedom Conservancy (SFC) under one
         
     | 
| 
      
 4 
     | 
    
         
            +
            # or more contributor license agreements.  See the NOTICE file
         
     | 
| 
      
 5 
     | 
    
         
            +
            # distributed with this work for additional information
         
     | 
| 
      
 6 
     | 
    
         
            +
            # regarding copyright ownership.  The SFC licenses this file
         
     | 
| 
      
 7 
     | 
    
         
            +
            # to you under the Apache License, Version 2.0 (the
         
     | 
| 
      
 8 
     | 
    
         
            +
            # "License"); you may not use this file except in compliance
         
     | 
| 
      
 9 
     | 
    
         
            +
            # with the License.  You may obtain a copy of the License at
         
     | 
| 
      
 10 
     | 
    
         
            +
            #
         
     | 
| 
      
 11 
     | 
    
         
            +
            #   http://www.apache.org/licenses/LICENSE-2.0
         
     | 
| 
      
 12 
     | 
    
         
            +
            #
         
     | 
| 
      
 13 
     | 
    
         
            +
            # Unless required by applicable law or agreed to in writing,
         
     | 
| 
      
 14 
     | 
    
         
            +
            # software distributed under the License is distributed on an
         
     | 
| 
      
 15 
     | 
    
         
            +
            # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
         
     | 
| 
      
 16 
     | 
    
         
            +
            # KIND, either express or implied.  See the License for the
         
     | 
| 
      
 17 
     | 
    
         
            +
            # specific language governing permissions and limitations
         
     | 
| 
      
 18 
     | 
    
         
            +
            # under the License.
         
     | 
| 
      
 19 
     | 
    
         
            +
             
     | 
| 
      
 20 
     | 
    
         
            +
            # This file is automatically generated. Any changes will be lost!
         
     | 
| 
      
 21 
     | 
    
         
            +
            module Selenium
         
     | 
| 
      
 22 
     | 
    
         
            +
              module WebDriver
         
     | 
| 
      
 23 
     | 
    
         
            +
                class DevTools
         
     | 
| 
      
 24 
     | 
    
         
            +
                  def headless_experimental
         
     | 
| 
      
 25 
     | 
    
         
            +
                    @headless_experimental ||= V84::HeadlessExperimental.new(self)
         
     | 
| 
      
 26 
     | 
    
         
            +
                  end
         
     | 
| 
      
 27 
     | 
    
         
            +
             
     | 
| 
      
 28 
     | 
    
         
            +
                  module V84
         
     | 
| 
      
 29 
     | 
    
         
            +
                    class HeadlessExperimental
         
     | 
| 
      
 30 
     | 
    
         
            +
                      EVENTS = {
         
     | 
| 
      
 31 
     | 
    
         
            +
                        needs_begin_frames_changed: 'needsBeginFramesChanged',
         
     | 
| 
      
 32 
     | 
    
         
            +
                      }.freeze
         
     | 
| 
      
 33 
     | 
    
         
            +
             
     | 
| 
      
 34 
     | 
    
         
            +
                      def initialize(devtools)
         
     | 
| 
      
 35 
     | 
    
         
            +
                        @devtools = devtools
         
     | 
| 
      
 36 
     | 
    
         
            +
                      end
         
     | 
| 
      
 37 
     | 
    
         
            +
             
     | 
| 
      
 38 
     | 
    
         
            +
                      def on(event, &block)
         
     | 
| 
      
 39 
     | 
    
         
            +
                        event = EVENTS[event] if event.is_a?(Symbol)
         
     | 
| 
      
 40 
     | 
    
         
            +
                        @devtools.callbacks["HeadlessExperimental.#{event}"] << block
         
     | 
| 
      
 41 
     | 
    
         
            +
                      end
         
     | 
| 
      
 42 
     | 
    
         
            +
             
     | 
| 
      
 43 
     | 
    
         
            +
                      def begin_frame(frame_time_ticks: nil, interval: nil, no_display_updates: nil, screenshot: nil)
         
     | 
| 
      
 44 
     | 
    
         
            +
                        @devtools.send_cmd('HeadlessExperimental.beginFrame',
         
     | 
| 
      
 45 
     | 
    
         
            +
                                           frameTimeTicks: frame_time_ticks,
         
     | 
| 
      
 46 
     | 
    
         
            +
                                           interval: interval,
         
     | 
| 
      
 47 
     | 
    
         
            +
                                           noDisplayUpdates: no_display_updates,
         
     | 
| 
      
 48 
     | 
    
         
            +
                                           screenshot: screenshot)
         
     | 
| 
      
 49 
     | 
    
         
            +
                      end
         
     | 
| 
      
 50 
     | 
    
         
            +
             
     | 
| 
      
 51 
     | 
    
         
            +
                      def disable
         
     | 
| 
      
 52 
     | 
    
         
            +
                        @devtools.send_cmd('HeadlessExperimental.disable')
         
     | 
| 
      
 53 
     | 
    
         
            +
                      end
         
     | 
| 
      
 54 
     | 
    
         
            +
             
     | 
| 
      
 55 
     | 
    
         
            +
                      def enable
         
     | 
| 
      
 56 
     | 
    
         
            +
                        @devtools.send_cmd('HeadlessExperimental.enable')
         
     | 
| 
      
 57 
     | 
    
         
            +
                      end
         
     | 
| 
      
 58 
     | 
    
         
            +
             
     | 
| 
      
 59 
     | 
    
         
            +
                    end # V84
         
     | 
| 
      
 60 
     | 
    
         
            +
                  end # HeadlessExperimental
         
     | 
| 
      
 61 
     | 
    
         
            +
                end # DevTools
         
     | 
| 
      
 62 
     | 
    
         
            +
              end # WebDriver
         
     | 
| 
      
 63 
     | 
    
         
            +
            end # Selenium
         
     |