class AePageObjects::DocumentQuery::Condition

Attributes

document_class[R]
document_conditions[R]

Public Class Methods

new(document_class, document_conditions = {}, &block_condition) click to toggle source
# File lib/ae_page_objects/document_query.rb, line 6
def initialize(document_class, document_conditions = {}, &block_condition)
  @document_class    = document_class

  @document_conditions = document_conditions || {}
  @document_conditions[:block] = block_condition if block_condition
end

Public Instance Methods

match?(document) click to toggle source
# File lib/ae_page_objects/document_query.rb, line 13
def match?(document)
  @document_conditions.each do |type, value|
    case type
    when :title then
      return false unless Capybara.current_session.driver.browser.title.include?(value)
    when :url then
      return false unless document.current_url.include?(value)
    when :block then
      return false unless value.call(document)
    end
  end

  true
end