capybara 2.14.3 → 2.14.4

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
  SHA1:
3
- metadata.gz: 02dc31ca457043556ca668229aa313e59b198363
4
- data.tar.gz: 13528d46037d76c4deabfdfd57d2da09e45b7f01
3
+ metadata.gz: 987f25342ad56a2981f48c4cee5894c01601450e
4
+ data.tar.gz: c9c97e994be43ebde7ec94cd8cebcfcec74c2ad3
5
5
  SHA512:
6
- metadata.gz: 0a98665ce0452986b3f6a138b29a53fadaf3f2fc0ada1332005062845585ced403c0ea352facaf34c8b80915581e3122b51fa53b158f7348d05afef47ca4a17e
7
- data.tar.gz: 2a24b9da7fda6168106dedc1d621ab9184fa16ec391003199c85a3468b17535de939e9a044c715ac1c42b4cc9d907f41f3db8af808ffbb1256bb3d5a06c078f6
6
+ metadata.gz: 217162eb0ad144e6617666bc998f3f2dda3ccbd93b57f787762314f58203a53dcad4e2d78f9f760807cea15b597c3b6f3aa7533da4fe841af2aab73b211e222d
7
+ data.tar.gz: 59aef00f83df73f98197550976838d7b9e8690d89756a070497c3429a705b78d82b5807a89a24eebae0513277cf38bf23cf155bb32e1c6e4da17fa3b58709dee
data/History.md CHANGED
@@ -1,3 +1,11 @@
1
+ # Version 2.14.4
2
+
3
+ Release date: 2017-06-27
4
+
5
+ ### Fixed
6
+
7
+ * Fix retrieval of session_options for HaveSelector matcher descriptions - Issue #1883
8
+
1
9
  # Version 2.14.3
2
10
 
3
11
  Release date: 2017-06-15
@@ -45,7 +45,13 @@ module Capybara
45
45
 
46
46
  def session_options
47
47
  @context_el ||= nil
48
- @context_el ? @context_el.session_options : Capybara.session_options
48
+ if @context_el.respond_to? :session_options
49
+ @context_el.session_options
50
+ elsif @context_el.respond_to? :current_scope
51
+ @context_el.current_scope.session_options
52
+ else
53
+ Capybara.session_options
54
+ end
49
55
  end
50
56
  end
51
57
 
@@ -39,14 +39,14 @@ Capybara::SpecHelper.spec '#reset_session!' do
39
39
  expect(@session).to have_no_selector :xpath, "/html/body/*", wait: false
40
40
  end
41
41
 
42
- it "handles modals during unload" do
42
+ it "handles modals during unload", requires: [:modals] do
43
43
  @session.visit('/with_unload_alert')
44
44
  expect(@session).to have_selector(:css, 'div')
45
45
  expect { @session.reset_session! }.not_to raise_error
46
46
  expect(@session).to have_no_selector :xpath, "/html/body/*", wait: false
47
47
  end
48
48
 
49
- it "handles already open modals" do
49
+ it "handles already open modals", requires: [:modals] do
50
50
  @session.visit('/with_unload_alert')
51
51
  @session.click_link('Go away')
52
52
  expect { @session.reset_session! }.not_to raise_error
@@ -1,4 +1,4 @@
1
1
  # frozen_string_literal: true
2
2
  module Capybara
3
- VERSION = '2.14.3'
3
+ VERSION = '2.14.4'
4
4
  end
@@ -0,0 +1,46 @@
1
+ # frozen_string_literal: true
2
+ require 'spec_helper'
3
+
4
+ RSpec.describe 'Capybara RSpec Matchers', :type => :feature do
5
+ context "after called on session" do
6
+ it "HaveSelector should allow getting a description of the matcher" do
7
+ visit('/with_html')
8
+ matcher = have_selector(:css, 'h2.head', minimum: 3)
9
+ expect(page).to matcher
10
+ expect { matcher.description }.not_to raise_error
11
+ end
12
+
13
+ it "HaveText should allow getting a description" do
14
+ visit('/with_html')
15
+ matcher = have_text("Lorem")
16
+ expect(page).to matcher
17
+ expect { matcher.description }.not_to raise_error
18
+ end
19
+ end
20
+
21
+ context "after called on element" do
22
+ it "HaveSelector should allow getting a description" do
23
+ visit('/with_html')
24
+ el = find(:css, '#first')
25
+ matcher = have_selector(:css, 'a#foo')
26
+ expect(el).to matcher
27
+ expect { matcher.description }.not_to raise_error
28
+ end
29
+
30
+ it "MatchSelector should allow getting a description" do
31
+ visit('/with_html')
32
+ el = find(:css, '#first')
33
+ matcher = match_selector(:css, '#first')
34
+ expect(el).to matcher
35
+ expect { matcher.description }.not_to raise_error
36
+ end
37
+
38
+ it "HaveText should allow getting a description" do
39
+ visit('/with_html')
40
+ el = find(:css, '#first')
41
+ matcher = have_text("Lorem")
42
+ expect(el).to matcher
43
+ expect { matcher.description }.not_to raise_error
44
+ end
45
+ end
46
+ end
@@ -3,25 +3,22 @@ require 'spec_helper'
3
3
  require 'selenium-webdriver'
4
4
  require 'shared_selenium_session'
5
5
 
6
+ chrome_options = {
7
+ browser: :chrome,
8
+ options: ::Selenium::WebDriver::Chrome::Options.new(args: ENV['TRAVIS'] ? ['no-sandbox' ] : [])
9
+ }
10
+
11
+ if ENV['CAPYBARA_CHROME_HEADLESS']
12
+ chrome_options[:options].args << 'headless'
13
+ Selenium::WebDriver::Chrome.path='/usr/bin/google-chrome-beta' if ENV['TRAVIS']
14
+ end
15
+
6
16
  Capybara.register_driver :selenium_chrome do |app|
7
- args = ENV['TRAVIS'] ? ['no-sandbox' ] : []
8
- if ENV['CAPYBARA_CHROME_HEADLESS']
9
- args << 'headless'
10
- Selenium::WebDriver::Chrome.path='/usr/bin/google-chrome-beta' if ENV['TRAVIS']
11
- end
12
- Capybara::Selenium::Driver.new(app, :browser => :chrome, :args => args)
17
+ Capybara::Selenium::Driver.new(app, chrome_options)
13
18
  end
14
19
 
15
20
  Capybara.register_driver :selenium_chrome_clear_storage do |app|
16
- args = ENV['TRAVIS'] ? ['no-sandbox' ] : []
17
- if ENV['CAPYBARA_CHROME_HEADLESS']
18
- args << 'headless'
19
- Selenium::WebDriver::Chrome.path='/usr/bin/google-chrome-beta' if ENV['TRAVIS']
20
- end
21
- Capybara::Selenium::Driver.new(app, :browser => :chrome,
22
- :args => args,
23
- clear_local_storage: true,
24
- clear_session_storage: true)
21
+ Capybara::Selenium::Driver.new(app, chrome_options.merge(clear_local_storage: true, clear_session_storage: true))
25
22
  end
26
23
 
27
24
  module TestSessions
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: capybara
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.14.3
4
+ version: 2.14.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Thomas Walpole
@@ -10,7 +10,7 @@ autorequire:
10
10
  bindir: bin
11
11
  cert_chain:
12
12
  - gem-public_cert.pem
13
- date: 2017-06-15 00:00:00.000000000 Z
13
+ date: 2017-06-27 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: nokogiri
@@ -467,6 +467,7 @@ files:
467
467
  - spec/rspec/scenarios_spec.rb
468
468
  - spec/rspec/shared_spec_matchers.rb
469
469
  - spec/rspec/views_spec.rb
470
+ - spec/rspec_matchers_spec.rb
470
471
  - spec/rspec_spec.rb
471
472
  - spec/selector_spec.rb
472
473
  - spec/selenium_spec_chrome.rb