Class: DeviceDetails

Inherits:
Object
  • Object
show all
Defined in:
lib/optimus-runner/DeviceDetails.rb

Instance Method Summary collapse

Instance Method Details

#find_android_devices(device_names) ⇒ Object



38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
# File 'lib/optimus-runner/DeviceDetails.rb', line 38

def find_android_devices(device_names)
  device_details = []
  if(Nenv.android?)
    device_names.each do |a|
      puts "adb -s #{a['udid']} shell getprop ro.product.model"
      device_model =  `adb -s #{a['udid']} shell getprop ro.product.model`
      device_os_version =  `adb -s #{a['udid']} shell getprop ro.build.version.release`
      a['deviceName'] = device_model.to_s.rstrip
      a['platformVersion'] = device_os_version.to_s.rstrip
      a["platform"] = "ANDROID"
      device_details.push(a)
    end
  end
  device_details
end

#get_device_detailsObject



9
10
11
12
13
14
15
16
17
18
# File 'lib/optimus-runner/DeviceDetails.rb', line 9

def get_device_details
  device_names = self.process_android_devices
  android_device_details = find_android_devices(device_names)
  ios_device_details = process_ios_devices
  puts "ios details #{ios_device_details}"
  puts "android details #{android_device_details}"
  device_details = android_device_details+ios_device_details
  puts "device_details #{device_details}"
  device_details
end

#process_android_devicesObject



20
21
22
23
24
25
26
27
# File 'lib/optimus-runner/DeviceDetails.rb', line 20

def process_android_devices
  if(Nenv.android?) 
    devices = `adb devices`
  else 
    devices = []
  end
  return MDBClient.new.format_android_devices devices
end

#process_ios_devicesObject



29
30
31
32
33
34
35
36
# File 'lib/optimus-runner/DeviceDetails.rb', line 29

def process_ios_devices
  if(OS.mac? && Nenv.ios?) 
   devices = `instruments -s devices | grep 'iPhone'`
   return [] if devices.length == 0
    return MDBClient.new.format_ios_devices devices
  end
  return []
end