percy-capybara 4.3.1 → 4.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a4fb6fdec485db075cfc8cf93eedf339ce2a51bd46e078bc524ce085736e07b3
4
- data.tar.gz: 8d1aaaf79805bdb3aa765aa7c9a6747a33e23f8c598a62c8e92a08c9690ca2c7
3
+ metadata.gz: 2857e24e4b2bb5152dbfa2fa8313e1a32d9162cf4b71d04deb469d064da56c66
4
+ data.tar.gz: a4877b279d72980a454e1fff97e050755335c73de7ae8c6b3fbd9bce822c9f02
5
5
  SHA512:
6
- metadata.gz: 04f23d009a4b53172d875385ecc85fca8b9de74976f43254d9a065a89df092e3ed01ebfe6890d84d36856feef12f0ef689797e4dbdad34f2e7d47ebf6a54c376
7
- data.tar.gz: 848fbd8b7f815673d4bd7ff3dcd581f5fa7e04bf5a7610be83b5c700a762b2ccf6af36ba989ac45a31712da7fdf5d8ebb14e0137ccee14b7469ce95102796021
6
+ metadata.gz: 4d851ffc11d4abafbd8bd8974cb25a3d39aac3b9bbb1d05a814530c351425b7c0b6c7851e97bbb9e7742e4b91907facad0d5eeaa7d78a535a3213761b48b5beb
7
+ data.tar.gz: 971d7643e3e8100d8ba1229c3db968134e8ccde57ad70c08b7af9d39eea72ffb2209a00f513c0c818998213aa64b0b78b3b6bd8aaa74c32c311455ee8b8c57ea
@@ -77,7 +77,18 @@ module Percy
77
77
 
78
78
  begin
79
79
  page.execute_script(agent_js)
80
- page.execute_script("return new window.PercyAgent({ handleAgentCommunication: false }).domSnapshot(document, #{options.to_json})")
80
+ domsnapshot_js = "(function() { return new window.PercyAgent({ handleAgentCommunication: false }).domSnapshot(document, #{options.to_json}) })()"
81
+
82
+ # If we can use evalaute, use it (generally for capybara drivers)
83
+ # `execute_script` should work, but some Capybara drivers specifically return nil from this method
84
+ if page.respond_to?('evaluate_script')
85
+ dom_snapshot = page.evaluate_script(domsnapshot_js)
86
+ else
87
+ # if the driver doesn't have evaluate, it's probably a selenium driver
88
+ dom_snapshot = page.execute_script(domsnapshot_js)
89
+ end
90
+
91
+ return dom_snapshot
81
92
  rescue => e
82
93
  self._logger.error { "DOM snapshotting failed. Error: #{e}" }
83
94
  return nil
@@ -1,3 +1,3 @@
1
1
  module Percy
2
- VERSION = '4.3.1'.freeze
2
+ VERSION = '4.3.2'.freeze
3
3
  end
@@ -28,6 +28,6 @@ RSpec.configure do |config|
28
28
  Kernel.srand config.seed
29
29
 
30
30
  # See https://github.com/teamcapybara/capybara#selecting-the-driver for other options
31
- Capybara.default_driver = :selenium_chrome
32
- Capybara.javascript_driver = :selenium_chrome
31
+ Capybara.default_driver = :selenium_headless
32
+ Capybara.javascript_driver = :selenium_headless
33
33
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: percy-capybara
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.3.1
4
+ version: 4.3.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Perceptual Inc.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-09-01 00:00:00.000000000 Z
11
+ date: 2020-09-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler