eyes_selenium 3.16.12 → 3.16.13

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ba3eadfe2c452a73b20e1799f85ea0aeeba69763613c2b3cda8dbecf9d79f572
4
- data.tar.gz: f34fbe1de164517186249039ae6852fc1d03dc14d75a6d65bdf1eb0614b97ec0
3
+ metadata.gz: bf34f32517a64146b3254405709c8c07af4992496429fe55d67fc48d77aaf547
4
+ data.tar.gz: '083bd5f9fbdded908ed6a8eebb3eef403bb01abeb93cb5fcdabeae9a8696c294'
5
5
  SHA512:
6
- metadata.gz: 186e03f4d409c73ec8e2e9b3c3c6488293f816f3fe65b0d8ae6db992cc85680b0e4a4141d173cd9389041a3be16c16915590eef5e59ebf78af95dc075574f9b7
7
- data.tar.gz: 4b0041a83f5703bc297fdeaee40c4393b5545d58baf08b235bec102a9dc48de497acfa2a125fd8eff7d0f8b5e21a92e9799768db9e0334b757283008430bcdb5
6
+ metadata.gz: 960f6da1af7347ce928d5d474e767fb75d2c3462fac995f046804cf2548c4bce9d143e65623ae824de511a31957c4dbf475ed216ed4805163761f358be1659f3
7
+ data.tar.gz: a189c58ec060ce51ea151d6d1b9c466fb28a37206ec39109ae8cae7570cc7bd89dee319d9f4b8b3d3835f00adb4821df5775f1eff6401264282084aa3841d668
@@ -11,7 +11,7 @@ module Applitools
11
11
  force_full_page_screenshot: false,
12
12
  wait_before_screenshots: 0.1,
13
13
  stitch_mode: Applitools::Selenium::StitchModes::CSS,
14
- hide_scrollbars: false,
14
+ hide_scrollbars: true,
15
15
  hide_caret: false,
16
16
  browsers_info: Applitools::Selenium::BrowsersInfo.new,
17
17
  accessibility_validation: Applitools::AccessibilityLevel::NONE,
@@ -49,7 +49,7 @@ module Applitools
49
49
  end
50
50
 
51
51
  def fetch_urls(nodes)
52
- nodes.map { |n| url(n) }.flatten.compact #rescue []
52
+ nodes.map { |n| url(n) }.flatten.compact
53
53
  end
54
54
 
55
55
  def import_rules
@@ -117,7 +117,6 @@ module Applitools::Selenium
117
117
  self.region_to_check = nil
118
118
  self.force_full_page_screenshot = false
119
119
  self.dont_get_title = false
120
- self.hide_scrollbars = false
121
120
  self.device_pixel_ratio = UNKNOWN_DEVICE_PIXEL_RATIO
122
121
  self.stitch_mode = Applitools::STITCH_MODE[:scroll]
123
122
  self.wait_before_screenshots = DEFAULT_WAIT_BEFORE_SCREENSHOTS
@@ -246,7 +245,6 @@ module Applitools::Selenium
246
245
  original_position_provider = position_provider
247
246
  original_force_full_page_screenshot = force_full_page_screenshot
248
247
 
249
- eyes_element = nil
250
248
  timeout = target_to_check.options[:timeout] || USE_DEFAULT_MATCH_TIMEOUT
251
249
 
252
250
  self.eyes_screenshot_factory = lambda do |image|
@@ -256,14 +254,9 @@ module Applitools::Selenium
256
254
  )
257
255
  end
258
256
 
259
- # self.prevent_dom_processing = !((!target.options[:send_dom].nil? && target.options[:send_dom]) ||
260
- # send_dom || stitch_mode == Applitools::STITCH_MODE[:css])
261
- #
262
- # require 'pry'
263
- # binding.pry
264
-
265
257
  self.prevent_dom_processing = send_dom?(target_to_check) ? false : true
266
258
 
259
+ # rubocop:disable BlockLength
267
260
  check_in_frame target_frames: target_to_check.frames do
268
261
  begin
269
262
  match_data = Applitools::MatchWindowData.new(default_match_settings)
@@ -307,6 +300,24 @@ module Applitools::Selenium
307
300
  driver,
308
301
  eyes_element
309
302
  )
303
+ ensure_block = -> { eyes_element.overflow = original_overflow if original_overflow }
304
+ end
305
+ else
306
+ if hide_scrollbars
307
+ begin
308
+ original_overflow = Applitools::Utils::EyesSeleniumUtils.hide_scrollbars driver
309
+ driver.find_element(:css, 'html').overflow_data_attribute = original_overflow
310
+ rescue Applitools::EyesDriverOperationException => e
311
+ logger.warn "Failed to hide scrollbars! Error: #{e.message}"
312
+ ensure
313
+ ensure_block = lambda do
314
+ begin
315
+ Applitools::Utils::EyesSeleniumUtils.set_overflow driver, original_overflow if original_overflow
316
+ rescue Applitools::EyesDriverOperationException => e
317
+ logger.warn "Failed to revert overflow! Error: #{e.message}"
318
+ end
319
+ end
320
+ end
310
321
  end
311
322
  end
312
323
 
@@ -314,7 +325,7 @@ module Applitools::Selenium
314
325
  region_provider, timeout, match_data
315
326
  )
316
327
  ensure
317
- eyes_element.overflow = original_overflow unless original_overflow.nil?
328
+ ensure_block.call if ensure_block
318
329
  self.check_frame_or_element = false
319
330
  self.force_full_page_screenshot = original_force_full_page_screenshot
320
331
  self.position_provider = original_position_provider
@@ -417,33 +428,16 @@ module Applitools::Selenium
417
428
 
418
429
  update_scaling_params
419
430
 
420
- if hide_scrollbars
421
- begin
422
- original_overflow = Applitools::Utils::EyesSeleniumUtils.hide_scrollbars driver
423
- driver.find_element(:css, 'html').overflow_data_attribute = original_overflow
424
- rescue Applitools::EyesDriverOperationException => e
425
- logger.warn "Failed to hide scrollbars! Error: #{e.message}"
426
- end
427
- end
428
-
429
- begin
430
- algo = Applitools::Selenium::FullPageCaptureAlgorithm.new(
431
- debug_screenshot_provider: debug_screenshot_provider
432
- )
433
- case screenshot_type
434
- when ENTIRE_ELEMENT_SCREENSHOT
435
- self.screenshot = entire_element_screenshot(algo)
436
- when FULLPAGE_SCREENSHOT
437
- self.screenshot = full_page_screenshot(algo)
438
- when VIEWPORT_SCREENSHOT
439
- self.screenshot = viewport_screenshot
440
- end
441
- ensure
442
- begin
443
- Applitools::Utils::EyesSeleniumUtils.set_overflow driver, original_overflow
444
- rescue Applitools::EyesDriverOperationException => e
445
- logger.warn "Failed to revert overflow! Error: #{e.message}"
446
- end
431
+ algo = Applitools::Selenium::FullPageCaptureAlgorithm.new(
432
+ debug_screenshot_provider: debug_screenshot_provider
433
+ )
434
+ case screenshot_type
435
+ when ENTIRE_ELEMENT_SCREENSHOT
436
+ self.screenshot = entire_element_screenshot(algo)
437
+ when FULLPAGE_SCREENSHOT
438
+ self.screenshot = full_page_screenshot(algo)
439
+ when VIEWPORT_SCREENSHOT
440
+ self.screenshot = viewport_screenshot
447
441
  end
448
442
  end
449
443
 
@@ -465,7 +459,6 @@ module Applitools::Selenium
465
459
  stitching_overlap: stitching_overlap
466
460
  )
467
461
 
468
- # binding.pry
469
462
  unless original_frame.empty?
470
463
  logger.info 'Switching back to original frame...'
471
464
  driver.switch_to.frames frame_chain: original_frame
@@ -29,7 +29,6 @@ module Applitools
29
29
  def initialize
30
30
  self.frames = []
31
31
  self.options = {
32
- ignore_caret: true,
33
32
  ignore_mismatch: false,
34
33
  script_hooks: { beforeCaptureScreenshot: '' }
35
34
  }
@@ -57,6 +57,7 @@ module Applitools
57
57
  .xpath("//@*[namespace-uri(.) = 'http://www.w3.org/1999/xlink'] | //@href")
58
58
  .select { |a| a.name == 'href' }
59
59
  .map(&:value)
60
+ .select { |a| /^(?!#).*/.match(a) }
60
61
  handle_discovered_resources_block.call(attrs, url)
61
62
  end
62
63
 
@@ -29,6 +29,9 @@ module Applitools
29
29
  def initialize(visual_grid_manager, server_url = nil)
30
30
  ensure_config
31
31
  @server_connector = Applitools::Connectivity::ServerConnector.new(server_url)
32
+ @server_connector.obtain_agent_id do
33
+ full_agent_id
34
+ end
32
35
  self.server_url = server_url if server_url
33
36
  self.visual_grid_manager = visual_grid_manager
34
37
  self.test_list = Applitools::Selenium::TestList.new
@@ -41,6 +44,10 @@ module Applitools
41
44
  self.config = Applitools::Selenium::Configuration.new
42
45
  end
43
46
 
47
+ def full_agent_id
48
+ "eyes.selenium.visualgrid.ruby/#{Applitools::VERSION}"
49
+ end
50
+
44
51
  def configure
45
52
  return unless block_given?
46
53
  yield(config)
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: false
2
2
 
3
3
  module Applitools
4
- VERSION = '3.16.12'.freeze
4
+ VERSION = '3.16.13'.freeze
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: eyes_selenium
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.16.12
4
+ version: 3.16.13
5
5
  platform: ruby
6
6
  authors:
7
7
  - Applitools Team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-03-30 00:00:00.000000000 Z
11
+ date: 2020-04-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: eyes_core
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 3.16.12
19
+ version: 3.16.13
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - '='
25
25
  - !ruby/object:Gem::Version
26
- version: 3.16.12
26
+ version: 3.16.13
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: selenium-webdriver
29
29
  requirement: !ruby/object:Gem::Requirement