class AePageObjects::DocumentLoader

Public Class Methods

new(query, strategy) click to toggle source
# File lib/ae_page_objects/document_loader.rb, line 3
def initialize(query, strategy)
  @query    = query
  @strategy = strategy
end

Public Instance Methods

load() click to toggle source
# File lib/ae_page_objects/document_loader.rb, line 8
def load
  begin
    AePageObjects.wait_until do
      @query.conditions.each do |document_condition|
        if document = @strategy.load_document_with_condition(document_condition)
          return document
        end
      end

      nil
    end
  rescue AePageObjects::WaitTimeoutError
  end

  raise DocumentLoadError, @strategy.document_not_loaded_error_message(@query)
end