module Applitools::Calabash::Utils
Public Instance Methods
clear_directories(eyes_settings)
click to toggle source
# File lib/applitools/calabash/utils.rb, line 17 def clear_directories(eyes_settings) tmp_dir = File.join Dir.getwd, eyes_settings.tmp_dir log_dir = File.join Dir.getwd, eyes_settings.log_dir FileUtils.remove_dir(tmp_dir) if File.exist?(tmp_dir) FileUtils.remove_dir(log_dir) if File.exist?(log_dir) end
create_directories(eyes_settings)
click to toggle source
# File lib/applitools/calabash/utils.rb, line 8 def create_directories(eyes_settings) FileUtils.mkpath( File.join(Dir.getwd, eyes_settings.tmp_dir, eyes_settings.screenshot_dir) ) FileUtils.mkpath( File.join(Dir.getwd, eyes_settings.log_dir) ) end
get_android_element(context, query, index)
click to toggle source
# File lib/applitools/calabash/utils.rb, line 55 def get_android_element(context, query, index) element_query = if (id = context.query(query, :getId)[index.to_i]) && id > 0 "* id:#{id}" else query + " index:#{index.to_i}" end element = context.query(element_query).first Applitools::Calabash::CalabashElement.new(element, element_query) end
get_ios_element(context, query, index)
click to toggle source
# File lib/applitools/calabash/utils.rb, line 65 def get_ios_element(context, query, index) hash = context.query(query, :hash)[index.to_i] return unless hash element_query = "* hash:#{hash}" element = context.query(element_query).first Applitools::Calabash::CalabashElement.new(element, element_query) end
grub_android_class_name(context, element)
click to toggle source
# File lib/applitools/calabash/utils.rb, line 47 def grub_android_class_name(context, element) request_element(context, element, :class) end
grub_ios_class_name(context, element)
click to toggle source
# File lib/applitools/calabash/utils.rb, line 51 def grub_ios_class_name(context, element) request_element(context, element, :className) end
region_from_element(element)
click to toggle source
# File lib/applitools/calabash/utils.rb, line 31 def region_from_element(element) region = Applitools::Region.new( element['rect']['x'], element['rect']['y'], element['rect']['width'], element['rect']['height'] ) return region if Applitools::Calabash::EnvironmentDetector.android? region.scale_it!(Applitools::Calabash::EyesSettings.instance.eyes.density) end
request_element(context, element, method)
click to toggle source
# File lib/applitools/calabash/utils.rb, line 42 def request_element(context, element, method) Applitools::ArgumentGuard.is_a?(element, 'element', Applitools::Calabash::CalabashElement) context.query(element.element_query, method) end
using_screenshot(context) { |screenshot| ... }
click to toggle source
# File lib/applitools/calabash/utils.rb, line 25 def using_screenshot(context) return unless block_given? screenshot_options = Applitools::Calabash::EyesSettings.instance.screenshot_names.next yield context.screenshot(screenshot_options) end