Module: Diffity::Utils

Defined in:
lib/diffity/utils.rb

Class Method Summary collapse

Class Method Details

.connectionObject

http connection that will be used for uploading images



4
5
6
7
8
9
10
11
12
# File 'lib/diffity/utils.rb', line 4

def self.connection
  base_uri = Diffity.base_uri
  Faraday.new(base_uri, request: { timeout: 120, open_timeout: 120 }) do |f|
    f.request :basic_auth, Diffity.api_key, 'X'
    f.request :multipart
    f.request :url_encoded
    f.adapter :net_http
  end
end

.image_file(identifier) ⇒ Object



28
29
30
# File 'lib/diffity/utils.rb', line 28

def self.image_file(identifier)
  "#{Dir.pwd}/#{images_dir}/#{identifier}.png"
end

.images_dirObject



14
15
16
# File 'lib/diffity/utils.rb', line 14

def self.images_dir
  'tmp/diffity'.freeze
end

.upload_image(run_id, identifier, browser, device, os, browser_version, device_name, os_version) ⇒ Object



18
19
20
21
22
23
24
25
26
# File 'lib/diffity/utils.rb', line 18

def self.upload_image(run_id, identifier, browser, device, os, browser_version,
                      device_name, os_version)
  Diffity.logger.fatal "uploading #{identifier}"
  image_io = Faraday::UploadIO.new(image_file(identifier), 'image/png')
  connection.post("/api/v1/runs/#{run_id}/run_images",
                  identifier: identifier, image: image_io, browser: browser,
                  device: device, os: os, browser_version: browser_version,
                  device_name: device_name, os_version: os_version)
end