Class: WdaClient

Inherits:
Object
  • Object
show all
Includes:
Homescreen, Screenshot, Sessions, Source, Status
Defined in:
lib/wda_client.rb,
lib/wda_client/source.rb,
lib/wda_client/status.rb,
lib/wda_client/version.rb,
lib/wda_client/sessions.rb,
lib/wda_client/homescreen.rb,
lib/wda_client/screenshot.rb

Defined Under Namespace

Modules: Homescreen, Screenshot, Sessions, Source, Status

Constant Summary collapse

BASE_URL =
'http://localhost:8100'
VERSION =
'0.1.0'

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Homescreen

#homescreen

Methods included from Source

#get_source

Methods included from Screenshot

#take_screenshot

Methods included from Sessions

#install

Methods included from Status

#get_status

Constructor Details

#initialize(desired_capabilities:, base_url: BASE_URL) ⇒ WdaClient

Returns a new instance of WdaClient.



23
24
25
26
27
28
# File 'lib/wda_client.rb', line 23

def initialize(desired_capabilities:, base_url: BASE_URL)
  @desired_capabilities = parse(desired_capabilities)
  @base_url = base_url
  @capabilities = nil
  @session_id = nil
end

Instance Attribute Details

#base_urlObject (readonly)

Returns the value of attribute base_url.



19
20
21
# File 'lib/wda_client.rb', line 19

def base_url
  @base_url
end

#capabilitiesObject

Returns the value of attribute capabilities.



18
19
20
# File 'lib/wda_client.rb', line 18

def capabilities
  @capabilities
end

#desired_capabilitiesObject

Returns the value of attribute desired_capabilities.



18
19
20
# File 'lib/wda_client.rb', line 18

def desired_capabilities
  @desired_capabilities
end

#session_idObject

Returns the value of attribute session_id.



18
19
20
# File 'lib/wda_client.rb', line 18

def session_id
  @session_id
end

Instance Method Details

#generate_base_req(method:, url_path:) ⇒ Object



34
35
36
37
38
39
40
41
42
43
44
45
46
# File 'lib/wda_client.rb', line 34

def generate_base_req(method:, url_path:)
  req = case method
        when 'get'
          Net::HTTP::Get.new(url_path)
        when 'post'
          Net::HTTP::Post.new(url_path)
        else
          # no method
        end
  req['Content-Type'] = 'application/json'

  req
end

#generate_uri(url_path:) ⇒ Object



30
31
32
# File 'lib/wda_client.rb', line 30

def generate_uri(url_path:)
  URI.parse(@base_url + url_path)
end