eyes_core 3.17.21 → 3.18.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/lib/applitools/appium/android_region_provider.rb +8 -0
- data/lib/applitools/appium/eyes.rb +9 -8
- data/lib/applitools/appium/region_provider.rb +2 -2
- data/lib/applitools/appium/target.rb +4 -4
- data/lib/applitools/appium/utils.rb +3 -0
- data/lib/applitools/core/batch_info.rb +20 -4
- data/lib/applitools/core/eyes_base.rb +2 -1
- data/lib/applitools/core/eyes_base_configuration.rb +1 -0
- data/lib/applitools/core/match_window_data.rb +4 -0
- data/lib/applitools/core/session_start_info.rb +2 -1
- data/lib/applitools/version.rb +1 -1
- metadata +7 -8
- data/lib/applitools/appium/initialize_1.9.rb +0 -18
- data/lib/applitools/appium/initialize_2.0.rb +0 -13
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 36a1a5082471151d4ccbc5683bc06802ae56b776
|
4
|
+
data.tar.gz: 1574274f76f4e4eaa271c70308592d3324856d2c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 62858147e7ee749c0dfdbb3dfdb992d3ecd8ec7f4269f789a9d71fae9ad007802cd31401382bb08e37b35375f3b532406d6cb9729fb412c2cdadaeba1db8e194
|
7
|
+
data.tar.gz: 6681412cf7e58b2e9a3e824ed82bc3dcf1bb1ef1f36e7d045076b8068c1f674614205305c7dbf67875965dee7a21071fa86f7ce8fda102699f64f075eaffb93a
|
@@ -12,6 +12,14 @@ module Applitools
|
|
12
12
|
|
13
13
|
def convert_viewport_rect_coordinates
|
14
14
|
region = viewport_rect
|
15
|
+
|
16
|
+
session_info = Applitools::Appium::Utils.session_capabilities(driver)
|
17
|
+
if session_info['deviceScreenSize']
|
18
|
+
device_height = session_info['deviceScreenSize'].split('x').last.to_i
|
19
|
+
system_bars_height = driver.get_system_bars.map {|_,v| v['height'] }.sum
|
20
|
+
region['height'] = device_height - system_bars_height
|
21
|
+
end
|
22
|
+
|
15
23
|
Applitools::Region.new(
|
16
24
|
region['left'],
|
17
25
|
region['top'],
|
@@ -14,6 +14,7 @@ class Applitools::Appium::Eyes < Applitools::Selenium::SeleniumEyes
|
|
14
14
|
self.runner = Applitools::ClassicRunner.new
|
15
15
|
self.base_agent_id = "eyes.appium.ruby/#{Applitools::VERSION}".freeze
|
16
16
|
self.status_bar_height = 0
|
17
|
+
self.utils = Applitools::Appium::Utils
|
17
18
|
end
|
18
19
|
|
19
20
|
private :perform_driver_settings_for_appium_driver
|
@@ -90,8 +91,8 @@ class Applitools::Appium::Eyes < Applitools::Selenium::SeleniumEyes
|
|
90
91
|
raise Applitools::EyesError.new('Unknown image format after scale!')
|
91
92
|
end
|
92
93
|
),
|
93
|
-
status_bar_height:
|
94
|
-
device_pixel_ratio:
|
94
|
+
status_bar_height: self.utils.status_bar_height(driver),
|
95
|
+
device_pixel_ratio: self.utils.device_pixel_ratio(driver)
|
95
96
|
)
|
96
97
|
end
|
97
98
|
end
|
@@ -131,20 +132,20 @@ class Applitools::Appium::Eyes < Applitools::Selenium::SeleniumEyes
|
|
131
132
|
def obtain_viewport_screenshot
|
132
133
|
self.screenshot = screenshot_class.new(
|
133
134
|
Applitools::Screenshot.from_datastream(driver.screenshot_as(:png)),
|
134
|
-
status_bar_height:
|
135
|
-
device_pixel_ratio:
|
135
|
+
status_bar_height: self.utils.status_bar_height(driver),
|
136
|
+
device_pixel_ratio: self.utils.device_pixel_ratio(driver)
|
136
137
|
)
|
137
138
|
end
|
138
139
|
|
139
140
|
def screenshot_class
|
140
|
-
return Applitools::Appium::IosScreenshot if
|
141
|
-
return Applitools::Appium::AndroidScreenshot if
|
141
|
+
return Applitools::Appium::IosScreenshot if self.utils.ios?(Applitools::Appium::Driver::AppiumLib)
|
142
|
+
return Applitools::Appium::AndroidScreenshot if self.utils.android?(Applitools::Appium::Driver::AppiumLib)
|
142
143
|
raise Applitools::EyesError, 'Unknown device type'
|
143
144
|
end
|
144
145
|
|
145
146
|
def region_provider_class
|
146
|
-
return Applitools::Appium::IosRegionProvider if
|
147
|
-
return Applitools::Appium::AndroidRegionProvider if
|
147
|
+
return Applitools::Appium::IosRegionProvider if self.utils.ios?(Applitools::Appium::Driver::AppiumLib)
|
148
|
+
return Applitools::Appium::AndroidRegionProvider if self.utils.android?(Applitools::Appium::Driver::AppiumLib)
|
148
149
|
raise Applitools::EyesError, 'Unknown device type'
|
149
150
|
end
|
150
151
|
end
|
@@ -23,7 +23,7 @@ module Applitools
|
|
23
23
|
private
|
24
24
|
|
25
25
|
def viewport_rect
|
26
|
-
Applitools::Utils
|
26
|
+
Applitools::Appium::Utils.viewport_rect(driver)
|
27
27
|
end
|
28
28
|
|
29
29
|
def convert_region_coordinates
|
@@ -44,7 +44,7 @@ module Applitools
|
|
44
44
|
end
|
45
45
|
|
46
46
|
def scale_factor
|
47
|
-
Applitools::Utils
|
47
|
+
Applitools::Appium::Utils.device_pixel_ratio(driver)
|
48
48
|
end
|
49
49
|
end
|
50
50
|
end
|
@@ -54,7 +54,7 @@ module Applitools
|
|
54
54
|
end
|
55
55
|
when Applitools::Region
|
56
56
|
result = first_argument.padding(requested_padding)
|
57
|
-
if Applitools::Utils
|
57
|
+
if Applitools::Appium::Utils.ios?(Applitools::Appium::Driver::AppiumLib)
|
58
58
|
def result.converted?
|
59
59
|
true
|
60
60
|
end
|
@@ -77,7 +77,7 @@ module Applitools
|
|
77
77
|
args.first
|
78
78
|
when Applitools::Region
|
79
79
|
result = Applitools::FloatingRegion.any(*args)
|
80
|
-
if Applitools::Utils
|
80
|
+
if Applitools::Appium::Utils.ios?(Applitools::Appium::Driver::AppiumLib)
|
81
81
|
def result.converted?
|
82
82
|
true
|
83
83
|
end
|
@@ -147,7 +147,7 @@ module Applitools
|
|
147
147
|
result = Applitools::AccessibilityRegion.new(
|
148
148
|
args.first, options[:type]
|
149
149
|
)
|
150
|
-
if Applitools::Utils
|
150
|
+
if Applitools::Appium::Utils.ios?(Applitools::Appium::Driver::AppiumLib)
|
151
151
|
def result.converted?
|
152
152
|
true
|
153
153
|
end
|
@@ -189,7 +189,7 @@ module Applitools
|
|
189
189
|
Applitools::Region.from_location_size(r.location, r.size)
|
190
190
|
end
|
191
191
|
when Applitools::Region
|
192
|
-
if Applitools::Utils
|
192
|
+
if Applitools::Appium::Utils.ios?(Applitools::Appium::Driver::AppiumLib)
|
193
193
|
def r.converted?
|
194
194
|
true
|
195
195
|
end
|
@@ -1,12 +1,13 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
require 'securerandom'
|
4
|
+
require 'applitools/utils/utils'
|
4
5
|
require_relative 'helpers'
|
5
6
|
|
6
7
|
module Applitools
|
7
8
|
class BatchInfo
|
8
9
|
extend Helpers
|
9
|
-
attr_accessor :started_at, :id, :notify_on_completion
|
10
|
+
attr_accessor :started_at, :id, :notify_on_completion, :properties
|
10
11
|
|
11
12
|
environment_attribute :name, 'APPLITOOLS_BATCH_NAME'
|
12
13
|
environment_attribute :id, 'APPLITOOLS_BATCH_ID'
|
@@ -14,10 +15,24 @@ module Applitools
|
|
14
15
|
environment_attribute :env_notify_on_completion, 'APPLITOOLS_BATCH_NOTIFY'
|
15
16
|
|
16
17
|
|
17
|
-
def initialize(
|
18
|
+
def initialize(args = nil, started_at = Time.now)
|
19
|
+
case args
|
20
|
+
when String
|
21
|
+
name = args
|
22
|
+
when Hash
|
23
|
+
sym_args = Applitools::Utils.symbolize_keys args
|
24
|
+
id ||= sym_args[:id]
|
25
|
+
name ||= sym_args[:name]
|
26
|
+
properties ||= sym_args[:properties]
|
27
|
+
end
|
18
28
|
self.name = name if name
|
19
29
|
@started_at = started_at
|
20
|
-
|
30
|
+
if id
|
31
|
+
self.id = id
|
32
|
+
elsif self.id.nil? || self.id.empty?
|
33
|
+
self.id = SecureRandom.uuid
|
34
|
+
end
|
35
|
+
self.properties = properties if properties
|
21
36
|
self.notify_on_completion = 'true'.casecmp(env_notify_on_completion || '') == 0 ? true : false
|
22
37
|
end
|
23
38
|
|
@@ -27,7 +42,8 @@ module Applitools
|
|
27
42
|
'name' => name,
|
28
43
|
'startedAt' => @started_at.iso8601,
|
29
44
|
'batchSequenceName' => sequence_name,
|
30
|
-
'notifyOnCompletion' => notify_on_completion
|
45
|
+
'notifyOnCompletion' => notify_on_completion,
|
46
|
+
'properties' => properties
|
31
47
|
}
|
32
48
|
end
|
33
49
|
|
@@ -319,7 +319,7 @@ module Applitools
|
|
319
319
|
branch_name: branch_name, parent_branch_name: parent_branch_name,
|
320
320
|
baseline_branch_name: baseline_branch_name, save_diffs: save_diffs,
|
321
321
|
properties: properties
|
322
|
-
|
322
|
+
session_start_info.agent_run_id = agent_run_id if agent_run_id
|
323
323
|
match_window_data.start_info = session_start_info
|
324
324
|
match_window_data.update_baseline_if_new = save_new_tests
|
325
325
|
match_window_data.update_baseline_if_different = save_failed_tests
|
@@ -597,6 +597,7 @@ module Applitools
|
|
597
597
|
branch_name: branch_name, parent_branch_name: parent_branch_name,
|
598
598
|
baseline_branch_name: baseline_branch_name, save_diffs: save_diffs,
|
599
599
|
properties: properties
|
600
|
+
session_start_info.agent_run_id = agent_run_id if agent_run_id
|
600
601
|
|
601
602
|
logger.info 'Starting server session...'
|
602
603
|
self.running_session = server_connector.start_session session_start_info
|
@@ -118,6 +118,7 @@ module Applitools
|
|
118
118
|
object_field :accessibility_validation, Applitools::AccessibilitySettings, true
|
119
119
|
object_field :properties, Array
|
120
120
|
int_field :match_timeout
|
121
|
+
string_field :agent_run_id
|
121
122
|
|
122
123
|
methods_to_delegate.delete(:batch_info)
|
123
124
|
methods_to_delegate.delete(:batch_info=)
|
@@ -87,6 +87,10 @@ module Applitools
|
|
87
87
|
current_data['Options']['Name'] = value
|
88
88
|
end
|
89
89
|
|
90
|
+
def variation_group_id=(value)
|
91
|
+
current_data['Options']['variantId'] = value
|
92
|
+
end
|
93
|
+
|
90
94
|
def user_inputs=(value)
|
91
95
|
Applitools::ArgumentGuard.is_a? value, 'value', Array
|
92
96
|
current_data['UserInputs'] += value.select { |i| i.respond_to? :to_hash }
|
@@ -5,7 +5,7 @@ module Applitools
|
|
5
5
|
include Applitools::Jsonable
|
6
6
|
json_fields :batchInfo, :agentId, :appIdOrName, :verId, :environment, :environmentName, :branchName, :defaultMatchSettings,
|
7
7
|
:scenarioIdOrName, :properties, :parentBranchName, :compareWithParentBranch, :baselineEnvName, :saveDiffs, :sessionType,
|
8
|
-
:baselineBranchName
|
8
|
+
:baselineBranchName, :agentRunId
|
9
9
|
|
10
10
|
wrap_data do |value|
|
11
11
|
{ startInfo: value }
|
@@ -28,6 +28,7 @@ module Applitools
|
|
28
28
|
self.save_diffs = options[:save_diffs]
|
29
29
|
self.session_type = options[:session_type]
|
30
30
|
self.baseline_branch_name = options[:baseline_branch_name]
|
31
|
+
self.agentRunId = options[:agent_run_id] if options[:agent_run_id]
|
31
32
|
end
|
32
33
|
|
33
34
|
def to_hash
|
data/lib/applitools/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: eyes_core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.
|
4
|
+
version: 3.18.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Applitools Team
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-05-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: oily_png
|
@@ -264,8 +264,6 @@ files:
|
|
264
264
|
- lib/applitools/appium/android_screenshot.rb
|
265
265
|
- lib/applitools/appium/driver.rb
|
266
266
|
- lib/applitools/appium/eyes.rb
|
267
|
-
- lib/applitools/appium/initialize_1.9.rb
|
268
|
-
- lib/applitools/appium/initialize_2.0.rb
|
269
267
|
- lib/applitools/appium/ios_region_provider.rb
|
270
268
|
- lib/applitools/appium/ios_screenshot.rb
|
271
269
|
- lib/applitools/appium/region_provider.rb
|
@@ -373,7 +371,7 @@ licenses:
|
|
373
371
|
- Applitools
|
374
372
|
metadata:
|
375
373
|
yard.run: yri
|
376
|
-
post_install_message:
|
374
|
+
post_install_message:
|
377
375
|
rdoc_options: []
|
378
376
|
require_paths:
|
379
377
|
- lib
|
@@ -389,8 +387,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
389
387
|
- !ruby/object:Gem::Version
|
390
388
|
version: '0'
|
391
389
|
requirements: []
|
392
|
-
|
393
|
-
|
390
|
+
rubyforge_project:
|
391
|
+
rubygems_version: 2.6.14.3
|
392
|
+
signing_key:
|
394
393
|
specification_version: 4
|
395
394
|
summary: Core of the Applitools Ruby SDK
|
396
395
|
test_files: []
|
@@ -1,18 +0,0 @@
|
|
1
|
-
# frozen_string_literal: false
|
2
|
-
|
3
|
-
module Applitools::Appium
|
4
|
-
module Init19
|
5
|
-
extend self
|
6
|
-
|
7
|
-
def init
|
8
|
-
Applitools::Utils::EyesSeleniumUtils.module_eval do
|
9
|
-
alias_method :super_mobile_device?, :mobile_device?
|
10
|
-
alias_method :super_android?, :android?
|
11
|
-
alias_method :super_ios?, :ios?
|
12
|
-
alias_method :super_platform_version, :platform_version
|
13
|
-
alias_method :super_current_scroll_position, :current_scroll_position
|
14
|
-
include Applitools::Appium::Utils
|
15
|
-
end
|
16
|
-
end
|
17
|
-
end
|
18
|
-
end
|