Module: SitePrism::Loadable::ClassMethods

Defined in:
lib/site_prism/loadable.rb

Overview

SitePrism::Loadable::ClassMethods

This exposes all of the DSL definitions users will use when generating “loadables”

A “Loadable” is a definition whereby the page object once loaded must pass a boolean check These loadables are typically provided using the method ‘load_validation`

Instance Method Summary collapse

Instance Method Details

#load_validation(&block) ⇒ Proc

Appends a load validation block to the page class.

When ‘loaded?` is called, these blocks are instance_eval’d against the current page instance. This allows users to wait for specific events to occur on the page or certain elements to be loaded before performing any actions on the page.

loaded successfully, or false if it did not. This block can contain up to 2 elements in an array The first is the physical validation test to be truthily evaluated.

If this does not pass, then the 2nd item (if defined), is output as an error message to the FailedLoadValidationError that is thrown

Parameters:

  • block (&block)

    A block which returns true if the page

Returns:

  • (Proc)


105
106
107
# File 'lib/site_prism/loadable.rb', line 105

def load_validation(&block)
  _load_validations << block
end

#load_validationsArray

The list of load_validations. They will be executed in the order they are defined.

Returns:

  • (Array)


80
81
82
83
84
85
86
# File 'lib/site_prism/loadable.rb', line 80

def load_validations
  if superclass.respond_to?(:load_validations)
    superclass.load_validations + _load_validations
  else
    _load_validations
  end
end