class Applitoolz

Attributes

app_name[RW]
driver[RW]
eyes[RW]
keep[RW]
platform[RW]
test_name[RW]

Public Class Methods

new(options) click to toggle source
# File lib/flick/applitools.rb, line 7
def initialize options
  self.platform = options[:platform]
  self.driver = Screenshot.new options
  self.eyes = Applitools::Images::Eyes.new
  eyes.api_key = options[:apiKey]
  eyes.server_url = options[:server]
  eyes.log_handler = Logger.new(STDOUT) if options[:showLogs]
  eyes.proxy = Applitools::Connectivity::Proxy.new options[:proxy] if options[:proxy] 
  eyes.match_level = options[:matchLevel].downcase.to_sym
  eyes.baseline_name = options[:baseline]
  self.app_name = options[:appName]
  self.test_name = options[:testName]
  batch_info = Applitools::BatchInfo.new(options[:batchName])
  batch_info.id = options[:batchId] #Date.today.to_time.to_i
  eyes.batch = batch_info
  eyes.host_app = options[:hostApp]
  eyes.host_os = options[:hostOs]
  self.keep = options[:keep]
end

Public Instance Methods

upload_to_applitools() click to toggle source
# File lib/flick/applitools.rb, line 27
def upload_to_applitools
  image_info = driver.screenshot
  eyes.test(app_name: app_name, test_name: test_name) do
    eyes.check_image(image_path: image_info[:path], tag: image_info[:udid])
    remove_image image_info[:path] unless keep
  end
end

Private Instance Methods

remove_image(image) click to toggle source
# File lib/flick/applitools.rb, line 37
def remove_image image
  File.delete image if File.exists? image
end