capybara 0.3.9 → 0.4.0.rc

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.
Files changed (70) hide show
  1. data/History.txt +43 -1
  2. data/README.rdoc +168 -98
  3. data/lib/capybara.rb +77 -15
  4. data/lib/capybara/driver/base.rb +21 -16
  5. data/lib/capybara/driver/celerity_driver.rb +39 -41
  6. data/lib/capybara/driver/culerity_driver.rb +2 -1
  7. data/lib/capybara/driver/node.rb +66 -0
  8. data/lib/capybara/driver/rack_test_driver.rb +66 -67
  9. data/lib/capybara/driver/selenium_driver.rb +43 -47
  10. data/lib/capybara/dsl.rb +44 -6
  11. data/lib/capybara/node.rb +185 -24
  12. data/lib/capybara/node/actions.rb +170 -0
  13. data/lib/capybara/node/finders.rb +150 -0
  14. data/lib/capybara/node/matchers.rb +360 -0
  15. data/lib/capybara/rails.rb +1 -0
  16. data/lib/capybara/selector.rb +52 -0
  17. data/lib/capybara/server.rb +68 -87
  18. data/lib/capybara/session.rb +221 -207
  19. data/lib/capybara/spec/driver.rb +45 -35
  20. data/lib/capybara/spec/public/test.js +1 -1
  21. data/lib/capybara/spec/session.rb +28 -53
  22. data/lib/capybara/spec/session/all_spec.rb +7 -3
  23. data/lib/capybara/spec/session/check_spec.rb +50 -52
  24. data/lib/capybara/spec/session/click_button_spec.rb +9 -0
  25. data/lib/capybara/spec/session/click_link_or_button_spec.rb +37 -0
  26. data/lib/capybara/spec/session/current_url_spec.rb +7 -0
  27. data/lib/capybara/spec/session/find_button_spec.rb +4 -2
  28. data/lib/capybara/spec/session/find_by_id_spec.rb +4 -2
  29. data/lib/capybara/spec/session/find_field_spec.rb +7 -3
  30. data/lib/capybara/spec/session/find_link_spec.rb +5 -3
  31. data/lib/capybara/spec/session/find_spec.rb +71 -6
  32. data/lib/capybara/spec/session/has_field_spec.rb +1 -1
  33. data/lib/capybara/spec/session/has_selector_spec.rb +129 -0
  34. data/lib/capybara/spec/session/has_xpath_spec.rb +4 -4
  35. data/lib/capybara/spec/session/javascript.rb +25 -5
  36. data/lib/capybara/spec/session/select_spec.rb +16 -2
  37. data/lib/capybara/spec/session/unselect_spec.rb +8 -1
  38. data/lib/capybara/spec/session/within_spec.rb +5 -5
  39. data/lib/capybara/spec/views/form.erb +65 -1
  40. data/lib/capybara/spec/views/popup_one.erb +8 -0
  41. data/lib/capybara/spec/views/popup_two.erb +8 -0
  42. data/lib/capybara/spec/views/with_html.erb +5 -0
  43. data/lib/capybara/spec/views/within_popups.erb +25 -0
  44. data/lib/capybara/{save_and_open_page.rb → util/save_and_open_page.rb} +3 -3
  45. data/lib/capybara/util/timeout.rb +27 -0
  46. data/lib/capybara/version.rb +1 -1
  47. data/spec/capybara_spec.rb +18 -8
  48. data/spec/driver/celerity_driver_spec.rb +10 -14
  49. data/spec/driver/culerity_driver_spec.rb +4 -3
  50. data/spec/driver/rack_test_driver_spec.rb +39 -2
  51. data/spec/driver/remote_culerity_driver_spec.rb +5 -7
  52. data/spec/driver/remote_selenium_driver_spec.rb +7 -10
  53. data/spec/driver/selenium_driver_spec.rb +3 -2
  54. data/spec/dsl_spec.rb +5 -14
  55. data/spec/save_and_open_page_spec.rb +19 -19
  56. data/spec/server_spec.rb +22 -10
  57. data/spec/session/celerity_session_spec.rb +17 -21
  58. data/spec/session/culerity_session_spec.rb +3 -3
  59. data/spec/session/rack_test_session_spec.rb +2 -2
  60. data/spec/session/selenium_session_spec.rb +2 -2
  61. data/spec/spec_helper.rb +27 -6
  62. data/spec/{wait_until_spec.rb → timeout_spec.rb} +14 -14
  63. metadata +88 -46
  64. data/lib/capybara/searchable.rb +0 -54
  65. data/lib/capybara/spec/session/click_spec.rb +0 -24
  66. data/lib/capybara/spec/session/locate_spec.rb +0 -65
  67. data/lib/capybara/wait_until.rb +0 -28
  68. data/lib/capybara/xpath.rb +0 -179
  69. data/spec/searchable_spec.rb +0 -66
  70. data/spec/xpath_spec.rb +0 -180
@@ -1,13 +1,14 @@
1
- require File.expand_path('../spec_helper', File.dirname(__FILE__))
1
+ require 'spec_helper'
2
2
 
3
3
  describe Capybara::Driver::Selenium do
4
4
  before do
5
- @driver = Capybara::Driver::Selenium.new(TestApp)
5
+ @driver = TestSessions::Selenium.driver
6
6
  end
7
7
 
8
8
  it_should_behave_like "driver"
9
9
  it_should_behave_like "driver with javascript support"
10
10
  it_should_behave_like "driver with frame support"
11
+ it_should_behave_like "driver with support for window switching"
11
12
  it_should_behave_like "driver without status code support"
12
13
  it_should_behave_like "driver with cookies support"
13
14
  end
@@ -1,4 +1,4 @@
1
- require File.expand_path('spec_helper', File.dirname(__FILE__))
1
+ require 'spec_helper'
2
2
 
3
3
  require 'capybara/dsl'
4
4
 
@@ -75,15 +75,15 @@ describe Capybara do
75
75
 
76
76
  it "should change with the current driver" do
77
77
  Capybara.current_session.mode.should == :rack_test
78
- Capybara.current_driver = :culerity
79
- Capybara.current_session.mode.should == :culerity
78
+ Capybara.current_driver = :selenium
79
+ Capybara.current_session.mode.should == :selenium
80
80
  end
81
81
 
82
82
  it "should be persistent even across driver changes" do
83
83
  object_id = Capybara.current_session.object_id
84
84
  Capybara.current_session.object_id.should == object_id
85
- Capybara.current_driver = :culerity
86
- Capybara.current_session.mode.should == :culerity
85
+ Capybara.current_driver = :selenium
86
+ Capybara.current_session.mode.should == :selenium
87
87
  Capybara.current_session.object_id.should_not == object_id
88
88
 
89
89
  Capybara.current_driver = :rack_test
@@ -99,15 +99,6 @@ describe Capybara do
99
99
  end
100
100
  end
101
101
 
102
- describe '.reset_sessions!' do
103
- it "should clear any persisted sessions" do
104
- object_id = Capybara.current_session.object_id
105
- Capybara.current_session.object_id.should == object_id
106
- Capybara.reset_sessions!
107
- Capybara.current_session.object_id.should_not == object_id
108
- end
109
- end
110
-
111
102
  describe 'the DSL' do
112
103
  before do
113
104
  @session = Capybara
@@ -1,16 +1,16 @@
1
- require File.expand_path('spec_helper', File.dirname(__FILE__))
1
+ require 'spec_helper'
2
2
 
3
- require 'capybara/save_and_open_page'
3
+ require 'capybara/util/save_and_open_page'
4
4
  require 'launchy'
5
- describe Capybara::SaveAndOpenPage do
6
- describe "#save_save_and_open_page" do
5
+ describe Capybara do
6
+ describe ".save_save_and_open_page" do
7
7
  before do
8
8
  @time = Time.new.strftime("%Y%m%d%H%M%S")
9
9
 
10
10
  @temp_file = mock("FILE")
11
11
  @temp_file.stub!(:write)
12
12
  @temp_file.stub!(:close)
13
-
13
+
14
14
  @html = <<-HTML
15
15
  <html>
16
16
  <head>
@@ -27,48 +27,48 @@ describe Capybara::SaveAndOpenPage do
27
27
  describe "defaults" do
28
28
  before do
29
29
  @name = "capybara-#{@time}.html"
30
-
30
+
31
31
  @temp_file.stub!(:path).and_return(@name)
32
32
 
33
33
  File.should_receive(:exist?).and_return true
34
34
  File.should_receive(:new).and_return @temp_file
35
35
  end
36
-
36
+
37
37
  it "should create a new temporary file" do
38
38
  @temp_file.should_receive(:write).with @html
39
- Capybara::SaveAndOpenPage.save_and_open_page @html
39
+ Capybara.save_and_open_page @html
40
40
  end
41
41
 
42
42
  it "should open the file in the browser" do
43
- Capybara::SaveAndOpenPage.should_receive(:open_in_browser).with(@name)
44
- Capybara::SaveAndOpenPage.save_and_open_page @html
43
+ Capybara.should_receive(:open_in_browser).with(@name)
44
+ Capybara.save_and_open_page @html
45
45
  end
46
46
  end
47
-
47
+
48
48
  describe "custom output path" do
49
49
  before do
50
50
  @custom_path = File.join('tmp', 'capybara')
51
51
  @custom_name = File.join(@custom_path, "capybara-#{@time}.html")
52
52
 
53
53
  @temp_file.stub!(:path).and_return(@custom_name)
54
-
54
+
55
55
  Capybara.should_receive(:save_and_open_page_path).at_least(:once).and_return(@custom_path)
56
56
  end
57
-
57
+
58
58
  it "should create a new temporary file in the custom path" do
59
59
  File.should_receive(:directory?).and_return true
60
60
  File.should_receive(:exist?).and_return true
61
61
  File.should_receive(:new).and_return @temp_file
62
-
62
+
63
63
  @temp_file.should_receive(:write).with @html
64
- Capybara::SaveAndOpenPage.save_and_open_page @html
64
+ Capybara.save_and_open_page @html
65
65
  end
66
-
66
+
67
67
  it "should open the file - in the custom path - in the browser" do
68
- Capybara::SaveAndOpenPage.should_receive(:open_in_browser).with(@custom_name)
69
- Capybara::SaveAndOpenPage.save_and_open_page @html
68
+ Capybara.should_receive(:open_in_browser).with(@custom_name)
69
+ Capybara.save_and_open_page @html
70
70
  end
71
-
71
+
72
72
  it "should be possible to configure output path" do
73
73
  Capybara.should respond_to(:save_and_open_page_path)
74
74
  default_setting = Capybara.save_and_open_page_path
@@ -1,13 +1,13 @@
1
- require File.expand_path('spec_helper', File.dirname(__FILE__))
1
+ require 'spec_helper'
2
2
 
3
3
  describe Capybara::Server do
4
4
 
5
5
  it "should spool up a rack server" do
6
6
  @app = proc { |env| [200, {}, "Hello Server!"]}
7
7
  @server = Capybara::Server.new(@app).boot
8
-
8
+
9
9
  @res = Net::HTTP.start(@server.host, @server.port) { |http| http.get('/') }
10
-
10
+
11
11
  @res.body.should include('Hello Server')
12
12
  end
13
13
 
@@ -16,21 +16,33 @@ describe Capybara::Server do
16
16
  @server = Capybara::Server.new(nil).boot
17
17
  end.should_not raise_error
18
18
  end
19
-
19
+
20
+ it "should use specified port" do
21
+ Capybara.server_port = 22789
22
+
23
+ @app = proc { |env| [200, {}, "Hello Server!"]}
24
+ @server = Capybara::Server.new(@app).boot
25
+
26
+ @res = Net::HTTP.start(@server.host, 22789) { |http| http.get('/') }
27
+ @res.body.should include('Hello Server')
28
+
29
+ Capybara.server_port = nil
30
+ end
31
+
20
32
  it "should find an available port" do
21
33
  @app1 = proc { |env| [200, {}, "Hello Server!"]}
22
34
  @app2 = proc { |env| [200, {}, "Hello Second Server!"]}
23
35
 
24
36
  @server1 = Capybara::Server.new(@app1).boot
25
37
  @server2 = Capybara::Server.new(@app2).boot
26
-
38
+
27
39
  @res1 = Net::HTTP.start(@server1.host, @server1.port) { |http| http.get('/') }
28
40
  @res1.body.should include('Hello Server')
29
-
41
+
30
42
  @res2 = Net::HTTP.start(@server2.host, @server2.port) { |http| http.get('/') }
31
43
  @res2.body.should include('Hello Second Server')
32
44
  end
33
-
45
+
34
46
  it "should use the server if it already running" do
35
47
  @app1 = proc { |env| [200, {}, "Hello Server!"]}
36
48
  @app2 = proc { |env| [200, {}, "Hello Second Server!"]}
@@ -39,13 +51,13 @@ describe Capybara::Server do
39
51
  @server1b = Capybara::Server.new(@app1).boot
40
52
  @server2a = Capybara::Server.new(@app2).boot
41
53
  @server2b = Capybara::Server.new(@app2).boot
42
-
54
+
43
55
  @res1 = Net::HTTP.start(@server1b.host, @server1b.port) { |http| http.get('/') }
44
56
  @res1.body.should include('Hello Server')
45
-
57
+
46
58
  @res2 = Net::HTTP.start(@server2b.host, @server2b.port) { |http| http.get('/') }
47
59
  @res2.body.should include('Hello Second Server')
48
-
60
+
49
61
  @server1a.port.should == @server1b.port
50
62
  @server2a.port.should == @server2b.port
51
63
  end
@@ -1,28 +1,24 @@
1
- require File.expand_path('../spec_helper', File.dirname(__FILE__))
1
+ require 'spec_helper'
2
2
 
3
- if RUBY_PLATFORM =~ /java/
4
- describe Capybara::Driver::Celerity do
5
- before(:all) do
6
- @session = Capybara::Session.new(:celerity, TestApp)
7
- end
3
+ describe Capybara::Driver::Celerity, :jruby => :platform do
4
+ before(:all) do
5
+ @session = TestSessions::Celerity
6
+ end
8
7
 
9
- describe '#driver' do
10
- it "should be a celerity driver" do
11
- @session.driver.should be_an_instance_of(Capybara::Driver::Celerity)
12
- end
8
+ describe '#driver' do
9
+ it "should be a celerity driver" do
10
+ @session.driver.should be_an_instance_of(Capybara::Driver::Celerity)
13
11
  end
12
+ end
14
13
 
15
- describe '#mode' do
16
- it "should remember the mode" do
17
- @session.mode.should == :celerity
18
- end
14
+ describe '#mode' do
15
+ it "should remember the mode" do
16
+ @session.mode.should == :celerity
19
17
  end
20
-
21
- it_should_behave_like "session"
22
- it_should_behave_like "session with javascript support"
23
- it_should_behave_like "session with headers support"
24
- it_should_behave_like "session with status code support"
25
18
  end
26
- else
27
- puts "#{File.basename(__FILE__)} requires JRuby; skipping.."
19
+
20
+ it_should_behave_like "session"
21
+ it_should_behave_like "session with javascript support"
22
+ it_should_behave_like "session with headers support"
23
+ it_should_behave_like "session with status code support"
28
24
  end
@@ -1,9 +1,9 @@
1
- require File.expand_path('../spec_helper', File.dirname(__FILE__))
1
+ require 'spec_helper'
2
2
 
3
- describe Capybara::Session do
3
+ describe Capybara::Session, :jruby => :installed do
4
4
  context 'with culerity driver' do
5
5
  before(:all) do
6
- @session = Capybara::Session.new(:culerity, TestApp)
6
+ @session = TestSessions::Culerity
7
7
  end
8
8
 
9
9
  describe '#driver' do
@@ -1,9 +1,9 @@
1
- require File.expand_path('../spec_helper', File.dirname(__FILE__))
1
+ require 'spec_helper'
2
2
 
3
3
  describe Capybara::Session do
4
4
  context 'with rack test driver' do
5
5
  before do
6
- @session = Capybara::Session.new(:rack_test, TestApp)
6
+ @session = TestSessions::RackTest
7
7
  end
8
8
 
9
9
  describe '#driver' do
@@ -1,9 +1,9 @@
1
- require File.expand_path('../spec_helper', File.dirname(__FILE__))
1
+ require 'spec_helper'
2
2
 
3
3
  describe Capybara::Session do
4
4
  context 'with selenium driver' do
5
5
  before do
6
- @session = Capybara::Session.new(:selenium, TestApp)
6
+ @session = TestSessions::Selenium
7
7
  end
8
8
 
9
9
  describe '#driver' do
@@ -1,9 +1,9 @@
1
1
  $:.unshift(File.expand_path('../lib', File.dirname(__FILE__)))
2
- $:.unshift(File.dirname(__FILE__))
3
2
 
4
3
  require 'rubygems'
5
- require 'spec'
6
- require 'spec/autorun'
4
+ require "bundler/setup"
5
+
6
+ require 'rspec'
7
7
  require 'capybara'
8
8
  require 'capybara/spec/driver'
9
9
  require 'capybara/spec/session'
@@ -12,8 +12,29 @@ alias :running :lambda
12
12
 
13
13
  Capybara.default_wait_time = 0 # less timeout so tests run faster
14
14
 
15
- Spec::Runner.configure do |config|
16
- config.after do
17
- Capybara.default_selector = :xpath
15
+ module TestSessions
16
+ RackTest = Capybara::Session.new(:rack_test, TestApp)
17
+ Selenium = Capybara::Session.new(:selenium, TestApp)
18
+ Culerity = Capybara::Session.new(:culerity, TestApp)
19
+ Celerity = Capybara::Session.new(:celerity, TestApp)
20
+ end
21
+
22
+ RSpec.configure do |config|
23
+
24
+ running_with_jruby = RUBY_PLATFORM =~ /java/
25
+ jruby_installed = `which jruby` && $?.success?
26
+
27
+ warn "** Skipping Celerity specs because platform is not Java" unless running_with_jruby
28
+ warn "** Skipping Culerity specs because JRuby is not installed" unless jruby_installed
29
+
30
+ config.filter_run_excluding(:jruby => lambda { |value|
31
+ return true if value == :platform && !running_with_jruby
32
+ return true if value == :installed && !jruby_installed
33
+ })
34
+
35
+ config.before do
36
+ Capybara.configure do |config|
37
+ config.default_selector = :xpath
38
+ end
18
39
  end
19
40
  end
@@ -1,28 +1,28 @@
1
- require File.expand_path('spec_helper', File.dirname(__FILE__))
1
+ require 'spec_helper'
2
2
 
3
3
  require 'capybara'
4
- require 'capybara/wait_until'
4
+ require 'capybara/util/timeout'
5
5
 
6
6
  module Capybara
7
-
8
- describe WaitUntil do
9
-
7
+
8
+ describe '.timeout' do
9
+
10
10
  it "should return result of yield if it returns true value within timeout" do
11
- WaitUntil.timeout { "hello" }.should == "hello"
11
+ Capybara.timeout { "hello" }.should == "hello"
12
12
  end
13
-
13
+
14
14
  it "should keep trying within timeout" do
15
15
  count = 0
16
- WaitUntil.timeout { count += 1; count == 5 ? count : nil }.should == 5
16
+ Capybara.timeout { count += 1; count == 5 ? count : nil }.should == 5
17
17
  end
18
-
18
+
19
19
  it "should raise Capybara::TimeoutError if block fails to return true within timeout" do
20
- running do
21
- WaitUntil.timeout(0.1) { false }
20
+ running do
21
+ Capybara.timeout(0.1) { false }
22
22
  end.should raise_error(::Capybara::TimeoutError)
23
23
  end
24
-
24
+
25
25
  end
26
-
26
+
27
27
  end
28
-
28
+
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: capybara
3
3
  version: !ruby/object:Gem::Version
4
- hash: 1
5
- prerelease: false
4
+ prerelease: true
6
5
  segments:
7
6
  - 0
8
- - 3
9
- - 9
10
- version: 0.3.9
7
+ - 4
8
+ - 0
9
+ - rc
10
+ version: 0.4.0.rc
11
11
  platform: ruby
12
12
  authors:
13
13
  - Jonas Nicklas
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2010-07-03 00:00:00 +02:00
18
+ date: 2010-10-12 00:00:00 +02:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
@@ -26,7 +26,6 @@ dependencies:
26
26
  requirements:
27
27
  - - ">="
28
28
  - !ruby/object:Gem::Version
29
- hash: 29
30
29
  segments:
31
30
  - 1
32
31
  - 3
@@ -42,7 +41,6 @@ dependencies:
42
41
  requirements:
43
42
  - - ">="
44
43
  - !ruby/object:Gem::Version
45
- hash: 47
46
44
  segments:
47
45
  - 1
48
46
  - 16
@@ -57,7 +55,6 @@ dependencies:
57
55
  requirements:
58
56
  - - ">="
59
57
  - !ruby/object:Gem::Version
60
- hash: 31
61
58
  segments:
62
59
  - 0
63
60
  - 2
@@ -66,101 +63,142 @@ dependencies:
66
63
  type: :runtime
67
64
  version_requirements: *id003
68
65
  - !ruby/object:Gem::Dependency
69
- name: selenium-webdriver
66
+ name: celerity
70
67
  prerelease: false
71
68
  requirement: &id004 !ruby/object:Gem::Requirement
72
69
  none: false
73
70
  requirements:
74
71
  - - ">="
75
72
  - !ruby/object:Gem::Version
76
- hash: 25
77
73
  segments:
78
74
  - 0
79
- - 0
80
- - 3
81
- version: 0.0.3
75
+ - 7
76
+ - 9
77
+ version: 0.7.9
82
78
  type: :runtime
83
79
  version_requirements: *id004
84
80
  - !ruby/object:Gem::Dependency
85
- name: rack
81
+ name: selenium-webdriver
86
82
  prerelease: false
87
83
  requirement: &id005 !ruby/object:Gem::Requirement
88
84
  none: false
89
85
  requirements:
90
86
  - - ">="
91
87
  - !ruby/object:Gem::Version
92
- hash: 23
88
+ segments:
89
+ - 0
90
+ - 0
91
+ - 27
92
+ version: 0.0.27
93
+ type: :runtime
94
+ version_requirements: *id005
95
+ - !ruby/object:Gem::Dependency
96
+ name: rack
97
+ prerelease: false
98
+ requirement: &id006 !ruby/object:Gem::Requirement
99
+ none: false
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
93
103
  segments:
94
104
  - 1
95
105
  - 0
96
106
  - 0
97
107
  version: 1.0.0
98
108
  type: :runtime
99
- version_requirements: *id005
109
+ version_requirements: *id006
100
110
  - !ruby/object:Gem::Dependency
101
111
  name: rack-test
102
112
  prerelease: false
103
- requirement: &id006 !ruby/object:Gem::Requirement
113
+ requirement: &id007 !ruby/object:Gem::Requirement
104
114
  none: false
105
115
  requirements:
106
116
  - - ">="
107
117
  - !ruby/object:Gem::Version
108
- hash: 3
109
118
  segments:
110
119
  - 0
111
120
  - 5
112
121
  - 4
113
122
  version: 0.5.4
114
123
  type: :runtime
115
- version_requirements: *id006
124
+ version_requirements: *id007
125
+ - !ruby/object:Gem::Dependency
126
+ name: xpath
127
+ prerelease: false
128
+ requirement: &id008 !ruby/object:Gem::Requirement
129
+ none: false
130
+ requirements:
131
+ - - ~>
132
+ - !ruby/object:Gem::Version
133
+ segments:
134
+ - 0
135
+ - 1
136
+ - 2
137
+ version: 0.1.2
138
+ type: :runtime
139
+ version_requirements: *id008
116
140
  - !ruby/object:Gem::Dependency
117
141
  name: sinatra
118
142
  prerelease: false
119
- requirement: &id007 !ruby/object:Gem::Requirement
143
+ requirement: &id009 !ruby/object:Gem::Requirement
120
144
  none: false
121
145
  requirements:
122
146
  - - ">="
123
147
  - !ruby/object:Gem::Version
124
- hash: 51
125
148
  segments:
126
149
  - 0
127
150
  - 9
128
151
  - 4
129
152
  version: 0.9.4
130
153
  type: :development
131
- version_requirements: *id007
154
+ version_requirements: *id009
132
155
  - !ruby/object:Gem::Dependency
133
156
  name: rspec
134
157
  prerelease: false
135
- requirement: &id008 !ruby/object:Gem::Requirement
158
+ requirement: &id010 !ruby/object:Gem::Requirement
136
159
  none: false
137
160
  requirements:
138
161
  - - ">="
139
162
  - !ruby/object:Gem::Version
140
- hash: 13
141
163
  segments:
142
- - 1
143
164
  - 2
144
- - 9
145
- version: 1.2.9
165
+ - 0
166
+ - 0
167
+ - beta
168
+ - 22
169
+ version: 2.0.0.beta.22
146
170
  type: :development
147
- version_requirements: *id008
171
+ version_requirements: *id010
148
172
  - !ruby/object:Gem::Dependency
149
173
  name: launchy
150
174
  prerelease: false
151
- requirement: &id009 !ruby/object:Gem::Requirement
175
+ requirement: &id011 !ruby/object:Gem::Requirement
152
176
  none: false
153
177
  requirements:
154
178
  - - ">="
155
179
  - !ruby/object:Gem::Version
156
- hash: 25
157
180
  segments:
158
181
  - 0
159
182
  - 3
160
183
  - 5
161
184
  version: 0.3.5
162
185
  type: :development
163
- version_requirements: *id009
186
+ version_requirements: *id011
187
+ - !ruby/object:Gem::Dependency
188
+ name: yard
189
+ prerelease: false
190
+ requirement: &id012 !ruby/object:Gem::Requirement
191
+ none: false
192
+ requirements:
193
+ - - ">="
194
+ - !ruby/object:Gem::Version
195
+ segments:
196
+ - 0
197
+ - 5
198
+ - 8
199
+ version: 0.5.8
200
+ type: :development
201
+ version_requirements: *id012
164
202
  description: Capybara is an integration testing tool for rack based web applications. It simulates how a user would interact with a website
165
203
  email:
166
204
  - jonas.nicklas@gmail.com
@@ -175,13 +213,16 @@ files:
175
213
  - lib/capybara/driver/base.rb
176
214
  - lib/capybara/driver/celerity_driver.rb
177
215
  - lib/capybara/driver/culerity_driver.rb
216
+ - lib/capybara/driver/node.rb
178
217
  - lib/capybara/driver/rack_test_driver.rb
179
218
  - lib/capybara/driver/selenium_driver.rb
180
219
  - lib/capybara/dsl.rb
220
+ - lib/capybara/node/actions.rb
221
+ - lib/capybara/node/finders.rb
222
+ - lib/capybara/node/matchers.rb
181
223
  - lib/capybara/node.rb
182
224
  - lib/capybara/rails.rb
183
- - lib/capybara/save_and_open_page.rb
184
- - lib/capybara/searchable.rb
225
+ - lib/capybara/selector.rb
185
226
  - lib/capybara/server.rb
186
227
  - lib/capybara/session.rb
187
228
  - lib/capybara/spec/driver.rb
@@ -195,8 +236,8 @@ files:
195
236
  - lib/capybara/spec/session/check_spec.rb
196
237
  - lib/capybara/spec/session/choose_spec.rb
197
238
  - lib/capybara/spec/session/click_button_spec.rb
239
+ - lib/capybara/spec/session/click_link_or_button_spec.rb
198
240
  - lib/capybara/spec/session/click_link_spec.rb
199
- - lib/capybara/spec/session/click_spec.rb
200
241
  - lib/capybara/spec/session/current_url_spec.rb
201
242
  - lib/capybara/spec/session/fill_in_spec.rb
202
243
  - lib/capybara/spec/session/find_button_spec.rb
@@ -210,11 +251,11 @@ files:
210
251
  - lib/capybara/spec/session/has_field_spec.rb
211
252
  - lib/capybara/spec/session/has_link_spec.rb
212
253
  - lib/capybara/spec/session/has_select_spec.rb
254
+ - lib/capybara/spec/session/has_selector_spec.rb
213
255
  - lib/capybara/spec/session/has_table_spec.rb
214
256
  - lib/capybara/spec/session/has_xpath_spec.rb
215
257
  - lib/capybara/spec/session/headers.rb
216
258
  - lib/capybara/spec/session/javascript.rb
217
- - lib/capybara/spec/session/locate_spec.rb
218
259
  - lib/capybara/spec/session/response_code.rb
219
260
  - lib/capybara/spec/session/select_spec.rb
220
261
  - lib/capybara/spec/session/uncheck_spec.rb
@@ -227,6 +268,8 @@ files:
227
268
  - lib/capybara/spec/views/form.erb
228
269
  - lib/capybara/spec/views/frame_one.erb
229
270
  - lib/capybara/spec/views/frame_two.erb
271
+ - lib/capybara/spec/views/popup_one.erb
272
+ - lib/capybara/spec/views/popup_two.erb
230
273
  - lib/capybara/spec/views/postback.erb
231
274
  - lib/capybara/spec/views/tables.erb
232
275
  - lib/capybara/spec/views/with_html.erb
@@ -234,9 +277,10 @@ files:
234
277
  - lib/capybara/spec/views/with_scope.erb
235
278
  - lib/capybara/spec/views/with_simple_html.erb
236
279
  - lib/capybara/spec/views/within_frames.erb
280
+ - lib/capybara/spec/views/within_popups.erb
281
+ - lib/capybara/util/save_and_open_page.rb
282
+ - lib/capybara/util/timeout.rb
237
283
  - lib/capybara/version.rb
238
- - lib/capybara/wait_until.rb
239
- - lib/capybara/xpath.rb
240
284
  - lib/capybara.rb
241
285
  - spec/capybara_spec.rb
242
286
  - spec/driver/celerity_driver_spec.rb
@@ -247,15 +291,13 @@ files:
247
291
  - spec/driver/selenium_driver_spec.rb
248
292
  - spec/dsl_spec.rb
249
293
  - spec/save_and_open_page_spec.rb
250
- - spec/searchable_spec.rb
251
294
  - spec/server_spec.rb
252
295
  - spec/session/celerity_session_spec.rb
253
296
  - spec/session/culerity_session_spec.rb
254
297
  - spec/session/rack_test_session_spec.rb
255
298
  - spec/session/selenium_session_spec.rb
256
299
  - spec/spec_helper.rb
257
- - spec/wait_until_spec.rb
258
- - spec/xpath_spec.rb
300
+ - spec/timeout_spec.rb
259
301
  - README.rdoc
260
302
  - History.txt
261
303
  has_rdoc: true
@@ -273,19 +315,19 @@ required_ruby_version: !ruby/object:Gem::Requirement
273
315
  requirements:
274
316
  - - ">="
275
317
  - !ruby/object:Gem::Version
276
- hash: 3
277
318
  segments:
278
319
  - 0
279
320
  version: "0"
280
321
  required_rubygems_version: !ruby/object:Gem::Requirement
281
322
  none: false
282
323
  requirements:
283
- - - ">="
324
+ - - ">"
284
325
  - !ruby/object:Gem::Version
285
- hash: 3
286
326
  segments:
287
- - 0
288
- version: "0"
327
+ - 1
328
+ - 3
329
+ - 1
330
+ version: 1.3.1
289
331
  requirements: []
290
332
 
291
333
  rubyforge_project: capybara