Class: Applitools::Connectivity::UniversalClient

Inherits:
Object
  • Object
show all
Extended by:
Forwardable
Defined in:
lib/applitools/universal_sdk/universal_client.rb

Constant Summary collapse

SESSION_INIT =
'Core.makeSDK'
CORE_MAKE_MANAGER =
'Core.makeManager'
CORE_GET_VIEWPORT_SIZE =
'Core.getViewportSize'
CORE_SET_VIEWPORT_SIZE =
'Core.setViewportSize'
CORE_CLOSE_BATCHES =
'Core.closeBatches'
CORE_DELETE_TEST =
'Core.deleteTest'
EYES_MANAGER_MAKE_EYES =
'EyesManager.openEyes'
EYES_MANAGER_CLOSE_ALL_EYES =
'EyesManager.closeManager'
EYES_CHECK =
'Eyes.check'
EYES_LOCATE =
'Eyes.locate'
EYES_EXTRACT_TEXT_REGIONS =
'Eyes.extractTextRegions'
EYES_EXTRACT_TEXT =
'Eyes.extractText'
EYES_CLOSE =
'Eyes.close'
EYES_ABORT =
'Eyes.abort'

Instance Method Summary collapse

Constructor Details

#initializeUniversalClient

Returns a new instance of UniversalClient.



37
38
39
40
41
42
# File 'lib/applitools/universal_sdk/universal_client.rb', line 37

def initialize
  # @socket = Applitools::Connectivity::UniversalClientSocket.new
  prepare_socket
  # store on open for next check calls
  @open_config = nil
end

Instance Method Details

#core_close_batches(close_batch_settings = nil) ⇒ Object



111
112
113
114
115
116
117
118
119
120
121
122
# File 'lib/applitools/universal_sdk/universal_client.rb', line 111

def core_close_batches(close_batch_settings=nil)
  # batchIds, serverUrl?, apiKey?, proxy?
  unless close_batch_settings.is_a?(Hash)
    batch_ids = [@open_config[:batch][:id]]
    batch_ids = [close_batch_settings] if close_batch_settings.is_a?(String)
    batch_ids = close_batch_settings if close_batch_settings.is_a?(Array)
    optional = [:serverUrl, :apiKey, :proxy].map {|k| [k, @open_config[k]] }.to_h
    close_batch_settings = { settings: ({ batchIds: batch_ids }.merge(optional).compact) }
  end
  # await(->(cb) { @socket.request(CORE_CLOSE_BATCHES, close_batch_settings, cb) })
  command_with_result(CORE_CLOSE_BATCHES, close_batch_settings)
end

#core_delete_test(delete_test_settings) ⇒ Object



124
125
126
127
128
# File 'lib/applitools/universal_sdk/universal_client.rb', line 124

def core_delete_test(delete_test_settings)
  # testId, batchId, secretToken, serverUrl, apiKey?, proxy?
  # await(->(cb) { @socket.request(CORE_DELETE_TEST, delete_test_settings, cb) })
  command_with_result(CORE_DELETE_TEST, delete_test_settings)
end

#core_get_viewport_size(driver) ⇒ Object



101
102
103
104
# File 'lib/applitools/universal_sdk/universal_client.rb', line 101

def core_get_viewport_size(driver)
  # await(->(cb) { @socket.request(CORE_GET_VIEWPORT_SIZE, {driver: driver}, cb) })
  command_with_result(CORE_GET_VIEWPORT_SIZE, {driver: driver})
end

#core_make_manager(eyes_manager_config) ⇒ Object



52
53
54
55
# File 'lib/applitools/universal_sdk/universal_client.rb', line 52

def core_make_manager(eyes_manager_config)
  # await(->(cb) { @socket.request(CORE_MAKE_MANAGER, eyes_manager_config, cb) })
  command_with_result(CORE_MAKE_MANAGER, eyes_manager_config)
end

#core_set_viewport_size(driver, size) ⇒ Object



106
107
108
109
# File 'lib/applitools/universal_sdk/universal_client.rb', line 106

def core_set_viewport_size(driver, size)
  # await(->(cb) { @socket.request(CORE_SET_VIEWPORT_SIZE, {driver: driver, size: size}, cb) })
  command_with_result(CORE_SET_VIEWPORT_SIZE, {driver: driver, size: size})
end

#eyes_abort(eyes) ⇒ Object



96
97
98
99
# File 'lib/applitools/universal_sdk/universal_client.rb', line 96

def eyes_abort(eyes)
  # await(->(cb) { @socket.request(EYES_ABORT, {eyes: eyes}, cb) })
  command_with_result(EYES_ABORT, {eyes: eyes})
end

#eyes_check(eyes, settings) ⇒ Object



71
72
73
74
# File 'lib/applitools/universal_sdk/universal_client.rb', line 71

def eyes_check(eyes, settings)
  # await(->(cb) { @socket.request(EYES_CHECK, {eyes: eyes, settings: settings, config: @open_config}, cb) })
  command_with_result(EYES_CHECK, {eyes: eyes, settings: settings, config: @open_config})
end

#eyes_close(eyes) ⇒ Object



91
92
93
94
# File 'lib/applitools/universal_sdk/universal_client.rb', line 91

def eyes_close(eyes)
  # await(->(cb) { @socket.request(EYES_CLOSE, {eyes: eyes}, cb) })
  command_with_result(EYES_CLOSE, {eyes: eyes})
end

#eyes_extract_text(eyes, regions) ⇒ Object



86
87
88
89
# File 'lib/applitools/universal_sdk/universal_client.rb', line 86

def eyes_extract_text(eyes, regions)
  # await(->(cb) { @socket.request(EYES_EXTRACT_TEXT, {eyes: eyes, regions: regions, config: @open_config}, cb) })
  command_with_result(EYES_EXTRACT_TEXT, {eyes: eyes, regions: regions, config: @open_config})
end

#eyes_extract_text_regions(eyes, settings) ⇒ Object



81
82
83
84
# File 'lib/applitools/universal_sdk/universal_client.rb', line 81

def eyes_extract_text_regions(eyes, settings)
  # await(->(cb) { @socket.request(EYES_EXTRACT_TEXT_REGIONS, {eyes: eyes, settings: settings, config: @open_config}, cb) })
  command_with_result(EYES_EXTRACT_TEXT_REGIONS, {eyes: eyes, settings: settings, config: @open_config})
end

#eyes_locate(eyes, settings) ⇒ Object



76
77
78
79
# File 'lib/applitools/universal_sdk/universal_client.rb', line 76

def eyes_locate(eyes, settings)
  # await(->(cb) { @socket.request(EYES_LOCATE, {eyes: eyes, settings: settings, config: @open_config}, cb) })
  command_with_result(EYES_LOCATE, {eyes: eyes, settings: settings, config: @open_config})
end

#eyes_manager_close_all_eyes(manager) ⇒ Object



66
67
68
69
# File 'lib/applitools/universal_sdk/universal_client.rb', line 66

def eyes_manager_close_all_eyes(manager)
  # await(->(cb) { @socket.request(EYES_MANAGER_CLOSE_ALL_EYES, {manager: manager}, cb) })
  command_with_result(EYES_MANAGER_CLOSE_ALL_EYES, {manager: manager})
end

#eyes_manager_make_eyes(manager, driver_config, config) ⇒ Object



57
58
59
60
61
62
63
64
# File 'lib/applitools/universal_sdk/universal_client.rb', line 57

def eyes_manager_make_eyes(manager, driver_config, config)
  @open_config = config

  # await(->(cb) {
  #   @socket.request(EYES_MANAGER_MAKE_EYES, {manager: manager, driver: driver_config, config: config}, cb)
  # })
  command_with_result(EYES_MANAGER_MAKE_EYES, {manager: manager, driver: driver_config, config: config})
end

#make_manager(eyes_manager_config) ⇒ Object



44
45
46
47
48
49
# File 'lib/applitools/universal_sdk/universal_client.rb', line 44

def make_manager(eyes_manager_config)
  Applitools::EyesLogger.logger.debug "EyesManager config: #{eyes_manager_config}"
  eyes_manager = core_make_manager(eyes_manager_config)
  Applitools::EyesLogger.logger.debug "EyesManager applitools-ref-id: #{eyes_manager[:"applitools-ref-id"]}"
  Applitools::UniversalEyesManager.new(eyes_manager, self)
end