"Fossies" - the Fresh Open Source Software Archive

Member "selenium-selenium-4.8.1/rb/lib/selenium/webdriver/common/timeouts.rb" (17 Feb 2023, 2481 Bytes) of package /linux/www/selenium-selenium-4.8.1.tar.gz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) Ruby source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file. See also the last Fossies "Diffs" side-by-side code changes report for "timeouts.rb": 4.7.0_vs_4.8.0.

    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 module Selenium
   21   module WebDriver
   22     class Timeouts
   23       def initialize(bridge)
   24         @bridge = bridge
   25       end
   26 
   27       #
   28       # Gets the amount of time the driver should wait when searching for elements.
   29       #
   30 
   31       def implicit_wait
   32         Float(@bridge.timeouts['implicit']) / 1000
   33       end
   34 
   35       #
   36       # Set the amount of time the driver should wait when searching for elements.
   37       #
   38 
   39       def implicit_wait=(seconds)
   40         @bridge.timeouts = {'implicit' => Integer(seconds * 1000)}
   41       end
   42 
   43       #
   44       # Gets the amount of time to wait for an asynchronous script to finish
   45       # execution before throwing an error.
   46       #
   47 
   48       def script
   49         Float(@bridge.timeouts['script']) / 1000
   50       end
   51       alias script_timeout script
   52 
   53       #
   54       # Sets the amount of time to wait for an asynchronous script to finish
   55       # execution before throwing an error. If the timeout is negative, then the
   56       # script will be allowed to run indefinitely.
   57       #
   58 
   59       def script=(seconds)
   60         @bridge.timeouts = {'script' => Integer(seconds * 1000)}
   61       end
   62       alias script_timeout= script=
   63 
   64       #
   65       # Gets the amount of time to wait for a page load to complete before throwing an error.
   66       #
   67 
   68       def page_load
   69         Float(@bridge.timeouts['pageLoad']) / 1000
   70       end
   71 
   72       #
   73       # Sets the amount of time to wait for a page load to complete before throwing an error.
   74       # If the timeout is negative, page loads can be indefinite.
   75       #
   76 
   77       def page_load=(seconds)
   78         @bridge.timeouts = {'pageLoad' => Integer(seconds * 1000)}
   79       end
   80     end # Timeouts
   81   end # WebDriver
   82 end # Selenium