capybara 2.4.4 → 2.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (76) hide show
  1. checksums.yaml +4 -4
  2. data/History.md +32 -5
  3. data/README.md +69 -8
  4. data/lib/capybara.rb +50 -29
  5. data/lib/capybara/driver/base.rb +4 -0
  6. data/lib/capybara/driver/node.rb +4 -0
  7. data/lib/capybara/helpers.rb +17 -5
  8. data/lib/capybara/node/actions.rb +16 -11
  9. data/lib/capybara/node/base.rb +7 -7
  10. data/lib/capybara/node/document_matchers.rb +1 -1
  11. data/lib/capybara/node/element.rb +82 -7
  12. data/lib/capybara/node/finders.rb +62 -22
  13. data/lib/capybara/node/matchers.rb +3 -3
  14. data/lib/capybara/node/simple.rb +6 -1
  15. data/lib/capybara/queries/base_query.rb +1 -1
  16. data/lib/capybara/queries/current_path_query.rb +58 -0
  17. data/lib/capybara/queries/text_query.rb +2 -11
  18. data/lib/capybara/rack_test/browser.rb +7 -2
  19. data/lib/capybara/rack_test/driver.rb +4 -0
  20. data/lib/capybara/rack_test/form.rb +2 -1
  21. data/lib/capybara/rack_test/node.rb +1 -0
  22. data/lib/capybara/result.rb +2 -2
  23. data/lib/capybara/rspec.rb +1 -0
  24. data/lib/capybara/rspec/features.rb +1 -1
  25. data/lib/capybara/rspec/matchers.rb +42 -3
  26. data/lib/capybara/selector.rb +7 -2
  27. data/lib/capybara/selenium/driver.rb +26 -12
  28. data/lib/capybara/selenium/node.rb +42 -6
  29. data/lib/capybara/server.rb +1 -1
  30. data/lib/capybara/session.rb +78 -50
  31. data/lib/capybara/session/matchers.rb +69 -0
  32. data/lib/capybara/spec/public/test.js +8 -0
  33. data/lib/capybara/spec/session/all_spec.rb +5 -0
  34. data/lib/capybara/spec/session/assert_current_path.rb +59 -0
  35. data/lib/capybara/spec/session/assert_text.rb +1 -1
  36. data/lib/capybara/spec/session/attach_file_spec.rb +2 -2
  37. data/lib/capybara/spec/session/body_spec.rb +2 -0
  38. data/lib/capybara/spec/session/click_button_spec.rb +17 -8
  39. data/lib/capybara/spec/session/click_link_spec.rb +32 -1
  40. data/lib/capybara/spec/session/current_url_spec.rb +5 -0
  41. data/lib/capybara/spec/session/fill_in_spec.rb +1 -1
  42. data/lib/capybara/spec/session/find_field_spec.rb +17 -0
  43. data/lib/capybara/spec/session/find_spec.rb +14 -5
  44. data/lib/capybara/spec/session/first_spec.rb +24 -0
  45. data/lib/capybara/spec/session/has_current_path_spec.rb +68 -0
  46. data/lib/capybara/spec/session/has_link_spec.rb +3 -0
  47. data/lib/capybara/spec/session/has_text_spec.rb +7 -0
  48. data/lib/capybara/spec/session/node_spec.rb +45 -6
  49. data/lib/capybara/spec/session/reset_session_spec.rb +18 -1
  50. data/lib/capybara/spec/session/save_and_open_page_spec.rb +19 -0
  51. data/lib/capybara/spec/session/save_page_spec.rb +12 -3
  52. data/lib/capybara/spec/session/save_screenshot_spec.rb +23 -0
  53. data/lib/capybara/spec/session/select_spec.rb +12 -0
  54. data/lib/capybara/spec/session/title_spec.rb +2 -2
  55. data/lib/capybara/spec/session/window/become_closed_spec.rb +4 -4
  56. data/lib/capybara/spec/session/window/switch_to_window_spec.rb +8 -0
  57. data/lib/capybara/spec/session/window/window_opened_by_spec.rb +14 -8
  58. data/lib/capybara/spec/session/window/window_spec.rb +24 -4
  59. data/lib/capybara/spec/spec_helper.rb +3 -1
  60. data/lib/capybara/spec/test_app.rb +10 -1
  61. data/lib/capybara/spec/views/form.erb +7 -1
  62. data/lib/capybara/spec/views/path.erb +12 -0
  63. data/lib/capybara/spec/views/with_html.erb +2 -0
  64. data/lib/capybara/spec/views/with_js.erb +9 -1
  65. data/lib/capybara/spec/views/with_title.erb +4 -1
  66. data/lib/capybara/spec/views/with_windows.erb +2 -2
  67. data/lib/capybara/version.rb +1 -1
  68. data/spec/basic_node_spec.rb +1 -0
  69. data/spec/capybara_spec.rb +12 -3
  70. data/spec/dsl_spec.rb +18 -6
  71. data/spec/rack_test_spec.rb +6 -5
  72. data/spec/rspec/matchers_spec.rb +62 -16
  73. data/spec/rspec/views_spec.rb +7 -0
  74. data/spec/selenium_spec.rb +38 -3
  75. data/spec/selenium_spec_chrome.rb +3 -7
  76. metadata +13 -4
@@ -11,6 +11,7 @@ Capybara::SpecHelper.run_specs TestClass.new, "DSL", :capybara_skip => [
11
11
  :screenshot,
12
12
  :frames,
13
13
  :windows,
14
+ :send_keys,
14
15
  :server,
15
16
  :hover,
16
17
  :about_scheme,
@@ -115,20 +116,20 @@ RSpec.describe Capybara::DSL do
115
116
 
116
117
  describe '#using_wait_time' do
117
118
  before do
118
- @previous_wait_time = Capybara.default_wait_time
119
+ @previous_wait_time = Capybara.default_max_wait_time
119
120
  end
120
121
 
121
122
  after do
122
- Capybara.default_wait_time = @previous_wait_time
123
+ Capybara.default_max_wait_time = @previous_wait_time
123
124
  end
124
125
 
125
126
  it "should switch the wait time and switch it back" do
126
127
  in_block = nil
127
128
  Capybara.using_wait_time 6 do
128
- in_block = Capybara.default_wait_time
129
+ in_block = Capybara.default_max_wait_time
129
130
  end
130
131
  expect(in_block).to eq(6)
131
- expect(Capybara.default_wait_time).to eq(@previous_wait_time)
132
+ expect(Capybara.default_max_wait_time).to eq(@previous_wait_time)
132
133
  end
133
134
 
134
135
  it "should ensure wait time is reset" do
@@ -136,8 +137,8 @@ RSpec.describe Capybara::DSL do
136
137
  Capybara.using_wait_time 6 do
137
138
  raise "hell"
138
139
  end
139
- end.to raise_error
140
- expect(Capybara.default_wait_time).to eq(@previous_wait_time)
140
+ end.to raise_error(RuntimeError, "hell")
141
+ expect(Capybara.default_max_wait_time).to eq(@previous_wait_time)
141
142
  end
142
143
  end
143
144
 
@@ -218,6 +219,17 @@ RSpec.describe Capybara::DSL do
218
219
  Capybara.using_session(:administrator) { called = true }
219
220
  expect(called).to eq(true)
220
221
  end
222
+
223
+ it "should be nestable" do
224
+ Capybara.using_session(:outer) do
225
+ expect(Capybara.session_name).to eq(:outer)
226
+ Capybara.using_session(:inner) do
227
+ expect(Capybara.session_name).to eq(:inner)
228
+ end
229
+ expect(Capybara.session_name).to eq(:outer)
230
+ end
231
+ expect(Capybara.session_name).to eq(:default)
232
+ end
221
233
  end
222
234
 
223
235
  describe "#session_name" do
@@ -10,6 +10,7 @@ Capybara::SpecHelper.run_specs TestSessions::RackTest, "RackTest", :capybara_ski
10
10
  :screenshot,
11
11
  :frames,
12
12
  :windows,
13
+ :send_keys,
13
14
  :server,
14
15
  :hover,
15
16
  :about_scheme,
@@ -59,7 +60,7 @@ RSpec.describe Capybara::Session do
59
60
  @session.driver.options[:respect_data_method] = false
60
61
  end
61
62
  end
62
-
63
+
63
64
  describe "#fill_in" do
64
65
  it "should warn that :fill_options are not supported" do
65
66
  expect_any_instance_of(Capybara::Node::Element).to receive(:warn)
@@ -120,7 +121,7 @@ RSpec.describe Capybara::RackTest::Driver do
120
121
 
121
122
  @driver.visit('/redirect')
122
123
  expect(@driver.response.header['Location']).to be_nil
123
- expect(@driver.browser.current_url).to match %r{/landed$}
124
+ expect(@driver.current_url).to match %r{/landed$}
124
125
  end
125
126
 
126
127
  it "is possible to not follow redirects" do
@@ -128,7 +129,7 @@ RSpec.describe Capybara::RackTest::Driver do
128
129
 
129
130
  @driver.visit('/redirect')
130
131
  expect(@driver.response.header['Location']).to match %r{/redirect_again$}
131
- expect(@driver.browser.current_url).to match %r{/redirect$}
132
+ expect(@driver.current_url).to match %r{/redirect$}
132
133
  end
133
134
  end
134
135
 
@@ -176,9 +177,9 @@ module CSSHandlerIncludeTester
176
177
  end
177
178
  include CSSHandlerIncludeTester
178
179
 
179
- RSpec.describe Capybara::RackTest::CSSHandlers do
180
+ RSpec.describe Capybara::RackTest::CSSHandlers do
180
181
  it "should not be extended by global includes" do
181
182
  expect(Capybara::RackTest::CSSHandlers.new).not_to respond_to(:dont_extend_css_handler)
182
183
  end
183
184
  end
184
-
185
+
@@ -74,7 +74,7 @@ RSpec.describe Capybara::RSpecMatchers do
74
74
  end.to raise_error(/expected not to find css "h1"/)
75
75
  end
76
76
  end
77
-
77
+
78
78
  it "supports compounding" do
79
79
  expect("<h1>Text</h1><h2>Text</h2>").to have_css('h1').and have_css('h2')
80
80
  expect("<h1>Text</h1><h2>Text</h2>").to have_css('h3').or have_css('h1')
@@ -141,7 +141,7 @@ RSpec.describe Capybara::RSpecMatchers do
141
141
  end.to raise_error(%r(expected not to find xpath "//h1"))
142
142
  end
143
143
  end
144
-
144
+
145
145
  it "supports compounding" do
146
146
  expect("<h1>Text</h1><h2>Text</h2>").to have_xpath('//h1').and have_xpath('//h2')
147
147
  expect("<h1>Text</h1><h2>Text</h2>").to have_xpath('//h3').or have_xpath('//h1')
@@ -247,7 +247,7 @@ RSpec.describe Capybara::RSpecMatchers do
247
247
  end
248
248
  end
249
249
  end
250
-
250
+
251
251
  it "supports compounding" do
252
252
  expect("<h1>Text</h1><h2>Text</h2>").to have_selector('//h1').and have_selector('//h2')
253
253
  expect("<h1>Text</h1><h2>Text</h2>").to have_selector('//h3').or have_selector('//h1')
@@ -336,7 +336,7 @@ RSpec.describe Capybara::RSpecMatchers do
336
336
  end
337
337
  end
338
338
  end
339
-
339
+
340
340
  it "supports compounding" do
341
341
  expect("<h1>Text</h1><h2>And</h2>").to have_content('Text').and have_content('And')
342
342
  expect("<h1>Text</h1><h2>Or</h2>").to have_content('XYZ').or have_content('Or')
@@ -470,7 +470,7 @@ RSpec.describe Capybara::RSpecMatchers do
470
470
  end
471
471
  end
472
472
  end
473
-
473
+
474
474
  it "supports compounding" do
475
475
  expect("<h1>Text</h1><h2>And</h2>").to have_text('Text').and have_text('And')
476
476
  expect("<h1>Text</h1><h2>Or</h2>").to have_text('Not here').or have_text('Or')
@@ -493,7 +493,7 @@ RSpec.describe Capybara::RSpecMatchers do
493
493
  expect(html).to have_link('No such Link')
494
494
  end.to raise_error(/expected to find link "No such Link"/)
495
495
  end
496
-
496
+
497
497
  it "supports compounding" do
498
498
  expect(html).to have_link('Just a link').and have_link('Another link')
499
499
  expect(html).to have_link('Not a link').or have_link('Another link')
@@ -559,12 +559,58 @@ RSpec.describe Capybara::RSpecMatchers do
559
559
  end
560
560
  end
561
561
  end
562
-
562
+
563
563
  it "supports compounding" do
564
564
  expect("<title>I compound</title>").to have_title('I dont compound').or have_title('I compound')
565
565
  end if RSpec::Version::STRING.to_f >= 3.0
566
566
  end
567
567
 
568
+ describe "have_current_path matcher" do
569
+ it "gives proper description" do
570
+ expect(have_current_path('http://www.example.com').description).to eq("have current path \"http://www.example.com\"")
571
+ end
572
+
573
+ context "on a page or node" do
574
+ it "passes if there is such a current path" do
575
+ visit('/with_js')
576
+ expect(page).to have_current_path('/with_js')
577
+ end
578
+
579
+ it "fails if there is no such current_path" do
580
+ visit('/with_js')
581
+ expect do
582
+ expect(page).to have_current_path('/not_with_js')
583
+ end.to raise_error('expected "/with_js" to equal "/not_with_js"')
584
+ end
585
+
586
+ context 'with wait' do
587
+ before(:each) do
588
+ @session = TestSessions::Selenium
589
+ @session.visit('/with_js')
590
+ end
591
+
592
+ it 'waits if wait time is more than timeout' do
593
+ @session.click_link("Change page")
594
+ using_wait_time 0 do
595
+ expect(@session).to have_current_path('/with_html', wait: 1)
596
+ end
597
+ end
598
+
599
+ it "doesn't wait if wait time is less than timeout" do
600
+ @session.click_link("Change page")
601
+ using_wait_time 0 do
602
+ expect(@session).not_to have_current_path('/with_html')
603
+ end
604
+ end
605
+ end
606
+ end
607
+
608
+ it "supports compounding" do
609
+ visit('/with_html')
610
+ expect(page).to have_current_path('/not_with_html').or have_current_path('/with_html')
611
+ end if RSpec::Version::STRING.to_f >= 3.0
612
+ end
613
+
568
614
  describe "have_button matcher" do
569
615
  let(:html) { '<button>A button</button><input type="submit" value="Another button"/>' }
570
616
 
@@ -581,7 +627,7 @@ RSpec.describe Capybara::RSpecMatchers do
581
627
  expect(html).to have_button('No such Button')
582
628
  end.to raise_error(/expected to find button "No such Button"/)
583
629
  end
584
-
630
+
585
631
  it "supports compounding" do
586
632
  expect(html).to have_button('Not this button').or have_button('A button')
587
633
  end if RSpec::Version::STRING.to_f >= 3.0
@@ -597,7 +643,7 @@ RSpec.describe Capybara::RSpecMatchers do
597
643
  it "gives proper description for a given value" do
598
644
  expect(have_field('Text field', with: 'some value').description).to eq("have field \"Text field\" with value \"some value\"")
599
645
  end
600
-
646
+
601
647
  it "passes if there is such a field" do
602
648
  expect(html).to have_field('Text field')
603
649
  end
@@ -626,7 +672,7 @@ RSpec.describe Capybara::RSpecMatchers do
626
672
  end
627
673
  expect(html).to have_field('Text field', with: Foo.new)
628
674
  end
629
-
675
+
630
676
  it "supports compounding" do
631
677
  expect(html).to have_field('Not this one').or have_field('Text field')
632
678
  end if RSpec::Version::STRING.to_f >= 3.0
@@ -641,7 +687,7 @@ RSpec.describe Capybara::RSpecMatchers do
641
687
  it "gives proper description" do
642
688
  expect(have_checked_field('it is checked').description).to eq("have field \"it is checked\" that is checked")
643
689
  end
644
-
690
+
645
691
  context "with should" do
646
692
  it "passes if there is such a field and it is checked" do
647
693
  expect(html).to have_checked_field('it is checked')
@@ -675,7 +721,7 @@ RSpec.describe Capybara::RSpecMatchers do
675
721
  expect(html).not_to have_checked_field('no such field')
676
722
  end
677
723
  end
678
-
724
+
679
725
  it "supports compounding" do
680
726
  expect(html).to have_checked_field('not this one').or have_checked_field('it is checked')
681
727
  end if RSpec::Version::STRING.to_f >= 3.0
@@ -724,7 +770,7 @@ RSpec.describe Capybara::RSpecMatchers do
724
770
  expect(html).not_to have_unchecked_field('no such field')
725
771
  end
726
772
  end
727
-
773
+
728
774
  it "supports compounding" do
729
775
  expect(html).to have_unchecked_field('it is checked').or have_unchecked_field('unchecked field')
730
776
  end if RSpec::Version::STRING.to_f >= 3.0
@@ -736,7 +782,7 @@ RSpec.describe Capybara::RSpecMatchers do
736
782
  it "gives proper description" do
737
783
  expect(have_select('Select Box').description).to eq("have select box \"Select Box\"")
738
784
  end
739
-
785
+
740
786
  it "gives proper description for a given selected value" do
741
787
  expect(have_select('Select Box', selected: 'some value').description).to eq("have select box \"Select Box\" with \"some value\" selected")
742
788
  end
@@ -750,7 +796,7 @@ RSpec.describe Capybara::RSpecMatchers do
750
796
  expect(html).to have_select('No such Select box')
751
797
  end.to raise_error(/expected to find select box "No such Select box"/)
752
798
  end
753
-
799
+
754
800
  it "supports compounding" do
755
801
  expect(html).to have_select('Not this one').or have_select('Select Box')
756
802
  end if RSpec::Version::STRING.to_f >= 3.0
@@ -772,7 +818,7 @@ RSpec.describe Capybara::RSpecMatchers do
772
818
  expect(html).to have_table('No such Table')
773
819
  end.to raise_error(/expected to find table "No such Table"/)
774
820
  end
775
-
821
+
776
822
  it "supports compounding" do
777
823
  expect(html).to have_table('nope').or have_table('Lovely table')
778
824
  end if RSpec::Version::STRING.to_f >= 3.0
@@ -0,0 +1,7 @@
1
+ require 'spec_helper'
2
+
3
+ RSpec.describe "capybara/rspec", type: :view do
4
+ it "allows matchers to be used on strings" do
5
+ expect(%{<h1>Test header</h1>}).to have_css("h1", text: "Test header")
6
+ end
7
+ end
@@ -63,16 +63,51 @@ RSpec.describe Capybara::Session do
63
63
  expect($?.exitstatus).to be 0
64
64
  end
65
65
  end
66
-
66
+
67
67
  describe "#accept_alert" do
68
68
  it "supports a blockless mode" do
69
69
  @session.visit('/with_js')
70
70
  @session.click_link('Open alert')
71
- expect(@session.driver.browser.switch_to.alert).to be_kind_of Selenium::WebDriver::Alert
72
71
  @session.accept_alert
73
72
  expect{@session.driver.browser.switch_to.alert}.to raise_error("No alert is present")
74
73
  end
75
74
  end
75
+
76
+ context "#fill_in with { :clear => :backspace } fill_option", :requires => [:js] do
77
+ it 'should fill in a field, replacing an existing value' do
78
+ @session.visit('/form')
79
+ @session.fill_in('form_first_name', :with => 'Harry',
80
+ fill_options: { clear: :backspace} )
81
+ expect(@session.find(:fillable_field, 'form_first_name').value).to eq('Harry')
82
+ end
83
+
84
+ it 'should only trigger onchange once' do
85
+ @session.visit('/with_js')
86
+ @session.fill_in('with_change_event', :with => 'some value',
87
+ :fill_options => { :clear => :backspace })
88
+ # click outside the field to trigger the change event
89
+ @session.find(:css, 'body').click
90
+ expect(@session.find(:css, '.change_event_triggered', :match => :one)).to have_text 'some value'
91
+ end
92
+
93
+ it 'should trigger change when clearing field' do
94
+ @session.visit('/with_js')
95
+ @session.fill_in('with_change_event', :with => '',
96
+ :fill_options => { :clear => :backspace })
97
+ # click outside the field to trigger the change event
98
+ @session.find(:css, 'body').click
99
+ expect(@session).to have_selector(:css, '.change_event_triggered', :match => :one)
100
+ end
101
+ end
102
+
103
+ describe "#path" do
104
+ it "returns xpath" do
105
+ # this is here because it is testing for an XPath that is specific to the algorithm used in the selenium driver
106
+ @session.visit('/path')
107
+ element = @session.find(:link, 'Second Link')
108
+ expect(element.path).to eq('/html/body/div[2]/a[1]')
109
+ end
110
+ end
76
111
  end
77
112
  end
78
113
 
@@ -80,7 +115,7 @@ RSpec.describe Capybara::Selenium::Driver do
80
115
  before do
81
116
  @driver = Capybara::Selenium::Driver.new(TestApp, browser: :firefox)
82
117
  end
83
-
118
+
84
119
  describe '#quit' do
85
120
  it "should reset browser when quit" do
86
121
  expect(@driver.browser).to be
@@ -1,21 +1,17 @@
1
1
  require 'spec_helper'
2
+ require 'selenium-webdriver'
2
3
 
3
4
  Capybara.register_driver :selenium_chrome do |app|
4
5
  args = ENV['TRAVIS'] ? ['no-sandbox' ] : []
5
6
  Capybara::Selenium::Driver.new(app, :browser => :chrome, :args => args)
6
7
  end
7
8
 
8
- class ChromeTestApp < TestApp
9
- # Object.id is different from the TestApp used in firefox session so
10
- # a new Capybar::Server instance will get launched for chrome testing
11
- end
12
-
13
9
  module TestSessions
14
- Chrome = Capybara::Session.new(:selenium_chrome, ChromeTestApp)
10
+ Chrome = Capybara::Session.new(:selenium_chrome, TestApp)
15
11
  end
16
12
 
17
13
  Capybara::SpecHelper.run_specs TestSessions::Chrome, "selenium_chrome", :capybara_skip => [
18
14
  :response_headers,
19
15
  :status_code,
20
- :trigger
16
+ :trigger
21
17
  ] unless ENV['TRAVIS'] && (RUBY_PLATFORM == 'java')
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.4.4
4
+ version: 2.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jonas Nicklas
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain:
11
11
  - gem-public_cert.pem
12
- date: 2014-10-13 00:00:00.000000000 Z
12
+ date: 2015-08-26 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: nokogiri
@@ -233,6 +233,7 @@ files:
233
233
  - lib/capybara/node/matchers.rb
234
234
  - lib/capybara/node/simple.rb
235
235
  - lib/capybara/queries/base_query.rb
236
+ - lib/capybara/queries/current_path_query.rb
236
237
  - lib/capybara/queries/text_query.rb
237
238
  - lib/capybara/queries/title_query.rb
238
239
  - lib/capybara/query.rb
@@ -251,6 +252,7 @@ files:
251
252
  - lib/capybara/selenium/node.rb
252
253
  - lib/capybara/server.rb
253
254
  - lib/capybara/session.rb
255
+ - lib/capybara/session/matchers.rb
254
256
  - lib/capybara/spec/fixtures/another_test_file.txt
255
257
  - lib/capybara/spec/fixtures/capybara.jpg
256
258
  - lib/capybara/spec/fixtures/test_file.txt
@@ -261,6 +263,7 @@ files:
261
263
  - lib/capybara/spec/session/accept_confirm_spec.rb
262
264
  - lib/capybara/spec/session/accept_prompt_spec.rb
263
265
  - lib/capybara/spec/session/all_spec.rb
266
+ - lib/capybara/spec/session/assert_current_path.rb
264
267
  - lib/capybara/spec/session/assert_selector.rb
265
268
  - lib/capybara/spec/session/assert_text.rb
266
269
  - lib/capybara/spec/session/assert_title.rb
@@ -288,6 +291,7 @@ files:
288
291
  - lib/capybara/spec/session/go_forward_spec.rb
289
292
  - lib/capybara/spec/session/has_button_spec.rb
290
293
  - lib/capybara/spec/session/has_css_spec.rb
294
+ - lib/capybara/spec/session/has_current_path_spec.rb
291
295
  - lib/capybara/spec/session/has_field_spec.rb
292
296
  - lib/capybara/spec/session/has_link_spec.rb
293
297
  - lib/capybara/spec/session/has_select_spec.rb
@@ -301,8 +305,10 @@ files:
301
305
  - lib/capybara/spec/session/node_spec.rb
302
306
  - lib/capybara/spec/session/reset_session_spec.rb
303
307
  - lib/capybara/spec/session/response_code.rb
308
+ - lib/capybara/spec/session/save_and_open_page_spec.rb
304
309
  - lib/capybara/spec/session/save_and_open_screenshot_spec.rb
305
310
  - lib/capybara/spec/session/save_page_spec.rb
311
+ - lib/capybara/spec/session/save_screenshot_spec.rb
306
312
  - lib/capybara/spec/session/screenshot_spec.rb
307
313
  - lib/capybara/spec/session/select_spec.rb
308
314
  - lib/capybara/spec/session/source_spec.rb
@@ -332,6 +338,7 @@ files:
332
338
  - lib/capybara/spec/views/frame_two.erb
333
339
  - lib/capybara/spec/views/header_links.erb
334
340
  - lib/capybara/spec/views/host_links.erb
341
+ - lib/capybara/spec/views/path.erb
335
342
  - lib/capybara/spec/views/popup_one.erb
336
343
  - lib/capybara/spec/views/popup_two.erb
337
344
  - lib/capybara/spec/views/postback.erb
@@ -358,6 +365,7 @@ files:
358
365
  - spec/result_spec.rb
359
366
  - spec/rspec/features_spec.rb
360
367
  - spec/rspec/matchers_spec.rb
368
+ - spec/rspec/views_spec.rb
361
369
  - spec/rspec_spec.rb
362
370
  - spec/selenium_spec.rb
363
371
  - spec/selenium_spec_chrome.rb
@@ -382,10 +390,11 @@ required_rubygems_version: !ruby/object:Gem::Requirement
382
390
  - !ruby/object:Gem::Version
383
391
  version: '0'
384
392
  requirements: []
385
- rubyforge_project: capybara
386
- rubygems_version: 2.4.2
393
+ rubyforge_project:
394
+ rubygems_version: 2.4.5.1
387
395
  signing_key:
388
396
  specification_version: 4
389
397
  summary: Capybara aims to simplify the process of integration testing Rack applications,
390
398
  such as Rails, Sinatra or Merb
391
399
  test_files: []
400
+ has_rdoc: