Module: MiniAutobot

Defined in:
lib/mini_autobot/init.rb,
lib/mini_autobot/utils.rb,
lib/mini_autobot/logger.rb,
lib/mini_autobot/runner.rb,
lib/mini_autobot/console.rb,
lib/mini_autobot/version.rb,
lib/mini_autobot/parallel.rb,
lib/mini_autobot/settings.rb,
lib/mini_autobot/connector.rb,
lib/mini_autobot/test_case.rb,
lib/mini_autobot/test_cases.rb,
lib/mini_autobot/page_objects.rb,
lib/mini_autobot/google_sheets.rb,
lib/mini_autobot/utils/castable.rb,
lib/mini_autobot/utils/loggable.rb,
lib/mini_autobot/page_objects/base.rb,
lib/mini_autobot/utils/endeca_helper.rb,
lib/mini_autobot/utils/assertion_helper.rb,
lib/mini_autobot/utils/page_object_helper.rb,
lib/mini_autobot/page_objects/overlay/base.rb,
lib/mini_autobot/page_objects/widgets/base.rb,
lib/mini_autobot/utils/data_generator_helper.rb,
lib/mini_autobot/page_objects/element_container.rb,
lib/mini_autobot/utils/overlay_and_widget_helper.rb

Overview

The base module for everything MiniAutobot and is the container for other modules and classes in the hierarchy:

  • ‘Connector` provides support for drivers and connector profiles;

  • ‘PageObjects` provides a hierarchy of page objects, page modules, widgets, and overlays;

  • ‘Settings` provides support for internal MiniAutobot settings; and

  • ‘Utils` provides an overarching module for miscellaneous helper modules.

Defined Under Namespace

Modules: PageObjects, TestCases, Utils Classes: Connector, Console, GoogleSheets, Logger, Parallel, Runner, Settings, TestCase

Constant Summary collapse

VERSION =
'1.1.7'

Class Method Summary collapse

Class Method Details

.gem_rootObject

Absolute path of root directory of this gem can be used both within this gem and in automation repo



44
45
46
# File 'lib/mini_autobot/init.rb', line 44

def self.gem_root
  @@__gem_root__ ||= Pathname.new(File.realpath(File.join(File.dirname(__FILE__), '..', '..')))
end

.google_sheetsObject



48
49
50
# File 'lib/mini_autobot/init.rb', line 48

def self.google_sheets
  @@google_sheets ||= GoogleSheets.new(session: MiniAutobot.root.join('config/mini_autobot', 'google_drive_config.json'), spreadsheet: MiniAutobot.settings.google_sheet)
end

.loggerObject



11
12
13
# File 'lib/mini_autobot/init.rb', line 11

def self.logger
  @@logger ||= MiniAutobot::Logger.new($stdout)
end

.logger=(value) ⇒ Object



15
16
17
# File 'lib/mini_autobot/init.rb', line 15

def self.logger=(value)
  @@logger = value
end

.rootPathname

Root directory of the automation repository. Automation repo can use it to refer to files within itself, and this gem also uses it to refer to config files of automation, for example:

File.read(MiniAutobot.root.join('config/mini_autobot', 'data.yml'))

will return the contents of ‘automation_root/config/mini_autobot/data.yml`.

Returns:

  • (Pathname)

    A reference to the root directory, ready to be used in directory and file path calculations.



38
39
40
# File 'lib/mini_autobot/init.rb', line 38

def self.root
  @@__root__ ||= Pathname.new(File.expand_path('.'))
end

.settingsObject



19
20
21
# File 'lib/mini_autobot/init.rb', line 19

def self.settings
  @@settings ||= Settings.new
end

.settings=(options) ⇒ Object



23
24
25
# File 'lib/mini_autobot/init.rb', line 23

def self.settings=(options)
  self.settings.merge!(options)
end