class ParallelCalabash::AdbHelper

Public Class Methods

new(filter = []) click to toggle source
# File lib/parallel_calabash/adb_helper.rb, line 17
def initialize(filter = [])
  @filter = filter
end

Public Instance Methods

adb_devices_l() click to toggle source
# File lib/parallel_calabash/adb_helper.rb, line 21
def adb_devices_l
  `adb devices -l`
end
connected_devices_with_model_info() click to toggle source
# File lib/parallel_calabash/adb_helper.rb, line 25
def connected_devices_with_model_info
  begin
    list =
        adb_devices_l.split("\n").collect do |line|
          device = device_id_and_model(line)
          filter_device(device)
        end
    list.compact.each { |device_data| device_data << screenshot_prefix(device_data.first) }
  rescue
    []
  end
end
device_id_and_model(line) click to toggle source
# File lib/parallel_calabash/adb_helper.rb, line 42
def device_id_and_model line
  if line.match(/device(?!s)/)
    [line.split(" ").first, line.scan(/model:(.*) device/).flatten.first]
  end
end
filter_device(device) click to toggle source
# File lib/parallel_calabash/adb_helper.rb, line 48
def filter_device device
  if @filter && !@filter.empty? && device
    device unless @filter.collect { |f| device[0].match(f) || device[1].match(f) }.compact.empty?
  else
    device
  end
end
screenshot_prefix(device_id) click to toggle source
# File lib/parallel_calabash/adb_helper.rb, line 38
def screenshot_prefix device_id
  device_id.gsub('.', '_').gsub(/:(.*)/, '').to_s + '_'
end