class Device

Attributes

id[RW]
model[RW]

Public Class Methods

device_from_type(id:, model:, device_type:) click to toggle source
# File lib/kraken-mobile/models/device.rb, line 101
def self.device_from_type(id:, model:, device_type:)
  device_class = nil
  if device_type == K::ANDROID_DEVICE
    device_class = AndroidDevice
  elsif device_type == K::WEB_DEVICE
    device_class = WebDevice
  end
  raise 'ERROR: Unsupported device' if device_class.nil?

  device_class.new(
    id: id, model: model
  )
end
find_by_process_id(id) click to toggle source
# File lib/kraken-mobile/models/device.rb, line 86
def self.find_by_process_id(id)
  DeviceProcess.directory.each do |process_info|
    info = process_info.strip.split(K::SEPARATOR)
    process_id = info[0]
    next unless process_id.to_s == id.to_s

    return device_from_type(
      id: info[1], model: info[2],
      device_type: info[3]
    )
  end

  nil
end
new(id:, model:) click to toggle source
# File lib/kraken-mobile/models/device.rb, line 13
def initialize(id:, model:)
  @id = id
  @model = model
end

Public Instance Methods

connected?() click to toggle source
# File lib/kraken-mobile/models/device.rb, line 51
def connected?
  raise 'ERROR: connected? not implemented.'
end
create_inbox() click to toggle source
# File lib/kraken-mobile/models/device.rb, line 21
def create_inbox
  raise 'ERROR: create_inbox not implemented.'
end
delete_inbox() click to toggle source
# File lib/kraken-mobile/models/device.rb, line 25
def delete_inbox
  raise 'ERROR: delete_inbox not implemented.'
end
orientation() click to toggle source
# File lib/kraken-mobile/models/device.rb, line 55
def orientation
  raise 'ERROR: orientation not implemented.'
end
read_signal(_signal, _timeout = K::DEFAULT_TIMEOUT_SECONDS) click to toggle source
# File lib/kraken-mobile/models/device.rb, line 33
def read_signal(_signal, _timeout = K::DEFAULT_TIMEOUT_SECONDS)
  raise 'ERROR: read_signal not implemented.'
end
run_kraken_monkey_with_number_of_events(_number_of_events) click to toggle source
# File lib/kraken-mobile/models/device.rb, line 44
def run_kraken_monkey_with_number_of_events(_number_of_events)
  raise 'ERROR: run_kraken_monkey_with_number_of_events not implemented.'
end
run_monkey_with_number_of_events(_number_of_events) click to toggle source
# File lib/kraken-mobile/models/device.rb, line 40
def run_monkey_with_number_of_events(_number_of_events)
  raise 'ERROR: run_monkey_with_number_of_events not implemented.'
end
save_snapshot_in_path(_file_path) click to toggle source
# File lib/kraken-mobile/models/device.rb, line 71
def save_snapshot_in_path(_file_path)
  raise 'ERROR: save_snapshot_in_path not implemented.'
end
screen_size() click to toggle source
# File lib/kraken-mobile/models/device.rb, line 59
def screen_size
  raise 'ERROR: screen_size not implemented.'
end
screenshot_prefix() click to toggle source
# File lib/kraken-mobile/models/device.rb, line 82
def screenshot_prefix
  @id.gsub('.', '_').gsub(/:(.*)/, '').to_s + '_'
end
sdk_version() click to toggle source
# File lib/kraken-mobile/models/device.rb, line 63
def sdk_version
  raise 'ERROR: sdk_version not implemented.'
end
to_s() click to toggle source
# File lib/kraken-mobile/models/device.rb, line 78
def to_s
  @id + K::SEPARATOR + @model + K::SEPARATOR + type
end
type() click to toggle source
# File lib/kraken-mobile/models/device.rb, line 67
def type
  raise 'ERROR: Unsupported device'
end
write_signal(_signal) click to toggle source
# File lib/kraken-mobile/models/device.rb, line 29
def write_signal(_signal)
  raise 'ERROR: write_signal not implemented.'
end