Module: Fluent::Evaluators

Included in:
Fluent
Defined in:
lib/fluent/evaluators.rb

Instance Method Summary collapse

Instance Method Details

#markupObject Also known as: html

Page-Level Actions ##



34
35
36
# File 'lib/fluent/evaluators.rb', line 34

def markup
  platform.markup
end

#refreshObject Also known as: refresh_page



14
15
16
# File 'lib/fluent/evaluators.rb', line 14

def refresh
  platform.refresh
end

#remove_cookiesObject Also known as: clear_cookies



10
11
12
# File 'lib/fluent/evaluators.rb', line 10

def remove_cookies
  platform.remove_cookies
end

#run_script(script) ⇒ Object Also known as: execute_script



18
19
20
# File 'lib/fluent/evaluators.rb', line 18

def run_script(script)
  platform.run_script(script)
end

#screenshot(file) ⇒ Object Also known as: save_screenshot



22
23
24
# File 'lib/fluent/evaluators.rb', line 22

def screenshot(file)
  platform.screenshot file
end

#textObject Also known as: page_text



42
43
44
# File 'lib/fluent/evaluators.rb', line 42

def text
  platform.text
end

#titleObject Also known as: page_title



38
39
40
# File 'lib/fluent/evaluators.rb', line 38

def title
  platform.title
end

#urlObject Also known as: current_url

Browser-Level Actions ##



6
7
8
# File 'lib/fluent/evaluators.rb', line 6

def url
  platform.url
end

#wait_for_app(value = 1) ⇒ Object



46
47
48
# File 'lib/fluent/evaluators.rb', line 46

def wait_for_app(value=1)
  sleep value
end

#wait_for_pending_requests(time_limit = 30, message_if_timeout = nil) ⇒ Object

Attempts to wait for pending jQuery requests and indicate if the requests did not occur in a given time period.

Parameters:

  • time_limit (Numeric) (defaults to: 30)

    time to wait for the block to return true

  • message_if_timeout (String) (defaults to: nil)

    the message to include with the error



55
56
57
58
59
60
61
62
63
# File 'lib/fluent/evaluators.rb', line 55

def wait_for_pending_requests(time_limit=30, message_if_timeout=nil)
  end_time = ::Time.now + time_limit
  until ::Time.now > end_time
    return if driver.execute_script('return jQuery.active') == 0
    wait_for_app 0.5
  end
  message = 'Pending jQuery requests never indicated completion.' unless message_if_timeout
  raise message
end

#wait_until(timeout = Fluent.page_level_wait, message = nil, &block) ⇒ Object Also known as: wait_for

Provides a context for an action that must succeed within a given time period. The logic here is simply that the result of the action will be true (meaning the action was carried out) or false, which means the action did not succeed in the time allotted.

Parameters:

  • timeout (Integer) (defaults to: Fluent.page_level_wait)

    the amount of time in seconds to wait

  • message (String) (defaults to: nil)

    the text to return if the action did not occur in time

  • block (Proc)

    the code that calls the desired action



73
74
75
# File 'lib/fluent/evaluators.rb', line 73

def wait_until(timeout=Fluent.page_level_wait, message=nil, &block)
  platform.wait_until(timeout, message, &block)
end