mkuklis-webrat 0.5.1 → 0.6.rc1

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 (211) hide show
  1. data/.document +3 -3
  2. data/.gitignore +14 -14
  3. data/History.txt +413 -413
  4. data/MIT-LICENSE.txt +19 -19
  5. data/README.rdoc +84 -84
  6. data/Rakefile +187 -187
  7. data/VERSION +1 -1
  8. data/install.rb +1 -1
  9. data/lib/webrat/adapters/mechanize.rb +78 -78
  10. data/lib/webrat/adapters/merb.rb +11 -11
  11. data/lib/webrat/adapters/rack.rb +25 -25
  12. data/lib/webrat/adapters/rails.rb +81 -81
  13. data/lib/webrat/adapters/sinatra.rb +9 -9
  14. data/lib/webrat/core/configuration.rb +92 -92
  15. data/lib/webrat/core/elements/area.rb +31 -31
  16. data/lib/webrat/core/elements/element.rb +33 -33
  17. data/lib/webrat/core/elements/field.rb +487 -487
  18. data/lib/webrat/core/elements/form.rb +103 -103
  19. data/lib/webrat/core/elements/label.rb +31 -31
  20. data/lib/webrat/core/elements/link.rb +93 -93
  21. data/lib/webrat/core/elements/select_option.rb +48 -48
  22. data/lib/webrat/core/locators/area_locator.rb +38 -38
  23. data/lib/webrat/core/locators/button_locator.rb +54 -54
  24. data/lib/webrat/core/locators/field_by_id_locator.rb +37 -37
  25. data/lib/webrat/core/locators/field_labeled_locator.rb +56 -56
  26. data/lib/webrat/core/locators/field_locator.rb +25 -25
  27. data/lib/webrat/core/locators/field_named_locator.rb +41 -41
  28. data/lib/webrat/core/locators/form_locator.rb +19 -19
  29. data/lib/webrat/core/locators/label_locator.rb +34 -34
  30. data/lib/webrat/core/locators/link_locator.rb +74 -74
  31. data/lib/webrat/core/locators/locator.rb +20 -20
  32. data/lib/webrat/core/locators/select_option_locator.rb +59 -59
  33. data/lib/webrat/core/locators.rb +20 -20
  34. data/lib/webrat/core/logging.rb +23 -23
  35. data/lib/webrat/core/matchers/have_content.rb +68 -68
  36. data/lib/webrat/core/matchers/have_selector.rb +74 -74
  37. data/lib/webrat/core/matchers/have_tag.rb +21 -21
  38. data/lib/webrat/core/matchers/have_xpath.rb +122 -122
  39. data/lib/webrat/core/matchers.rb +4 -4
  40. data/lib/webrat/core/methods.rb +64 -64
  41. data/lib/webrat/core/mime.rb +18 -18
  42. data/lib/webrat/core/save_and_open_page.rb +48 -48
  43. data/lib/webrat/core/scope.rb +365 -365
  44. data/lib/webrat/core/session.rb +306 -306
  45. data/lib/webrat/core/xml.rb +72 -72
  46. data/lib/webrat/core.rb +13 -13
  47. data/lib/webrat/core_extensions/blank.rb +58 -58
  48. data/lib/webrat/core_extensions/deprecate.rb +8 -8
  49. data/lib/webrat/core_extensions/detect_mapped.rb +12 -12
  50. data/lib/webrat/core_extensions/meta_class.rb +6 -6
  51. data/lib/webrat/core_extensions/nil_to_param.rb +5 -5
  52. data/lib/webrat/core_extensions/tcp_socket.rb +27 -27
  53. data/lib/webrat/integrations/merb.rb +10 -10
  54. data/lib/webrat/integrations/rails.rb +25 -25
  55. data/lib/webrat/integrations/rspec-rails.rb +10 -10
  56. data/lib/webrat/integrations/selenium.rb +11 -11
  57. data/lib/webrat/merb.rb +9 -9
  58. data/lib/webrat/rspec-rails.rb +2 -2
  59. data/lib/webrat/selenium/application_server_factory.rb +40 -40
  60. data/lib/webrat/selenium/application_servers/external.rb +26 -26
  61. data/lib/webrat/selenium/application_servers/merb.rb +50 -50
  62. data/lib/webrat/selenium/application_servers/rails.rb +3 -6
  63. data/lib/webrat/selenium/application_servers/sinatra.rb +37 -37
  64. data/lib/webrat/selenium/application_servers.rb +5 -5
  65. data/lib/webrat/selenium/location_strategy_javascript/button.js +19 -19
  66. data/lib/webrat/selenium/location_strategy_javascript/label.js +42 -42
  67. data/lib/webrat/selenium/location_strategy_javascript/webrat.js +6 -6
  68. data/lib/webrat/selenium/location_strategy_javascript/webratlink.js +32 -32
  69. data/lib/webrat/selenium/location_strategy_javascript/webratlinkwithin.js +15 -15
  70. data/lib/webrat/selenium/location_strategy_javascript/webratselectwithoption.js +5 -5
  71. data/lib/webrat/selenium/matchers/have_content.rb +66 -66
  72. data/lib/webrat/selenium/matchers/have_selector.rb +49 -49
  73. data/lib/webrat/selenium/matchers/have_tag.rb +72 -72
  74. data/lib/webrat/selenium/matchers/have_xpath.rb +45 -45
  75. data/lib/webrat/selenium/matchers.rb +4 -4
  76. data/lib/webrat/selenium/selenium_extensions.js +5 -5
  77. data/lib/webrat/selenium/selenium_rc_server.rb +86 -86
  78. data/lib/webrat/selenium/selenium_session.rb +267 -272
  79. data/lib/webrat/selenium/silence_stream.rb +18 -18
  80. data/lib/webrat/selenium.rb +70 -70
  81. data/lib/webrat.rb +18 -18
  82. data/spec/fakes/test_adapter.rb +37 -37
  83. data/spec/integration/mechanize/Rakefile +6 -6
  84. data/spec/integration/mechanize/config.ru +1 -1
  85. data/spec/integration/mechanize/sample_app.rb +20 -20
  86. data/spec/integration/mechanize/spec/mechanize_spec.rb +22 -22
  87. data/spec/integration/mechanize/spec/spec_helper.rb +27 -27
  88. data/spec/integration/merb/.gitignore +20 -20
  89. data/spec/integration/merb/Rakefile +35 -35
  90. data/spec/integration/merb/app/controllers/application.rb +2 -2
  91. data/spec/integration/merb/app/controllers/exceptions.rb +13 -13
  92. data/spec/integration/merb/app/controllers/testing.rb +27 -27
  93. data/spec/integration/merb/app/views/exceptions/not_acceptable.html.erb +63 -63
  94. data/spec/integration/merb/app/views/exceptions/not_found.html.erb +47 -47
  95. data/spec/integration/merb/app/views/layout/application.html.erb +11 -11
  96. data/spec/integration/merb/app/views/testing/show_form.html.erb +26 -26
  97. data/spec/integration/merb/app/views/testing/upload.html.erb +8 -8
  98. data/spec/integration/merb/config/environments/development.rb +15 -15
  99. data/spec/integration/merb/config/environments/rake.rb +11 -11
  100. data/spec/integration/merb/config/environments/test.rb +14 -14
  101. data/spec/integration/merb/config/init.rb +25 -25
  102. data/spec/integration/merb/config/rack.rb +11 -11
  103. data/spec/integration/merb/config/router.rb +34 -34
  104. data/spec/integration/merb/spec/spec.opts +1 -1
  105. data/spec/integration/merb/spec/spec_helper.rb +26 -26
  106. data/spec/integration/merb/spec/webrat_spec.rb +39 -39
  107. data/spec/integration/merb/tasks/merb.thor/app_script.rb +31 -31
  108. data/spec/integration/merb/tasks/merb.thor/common.rb +64 -64
  109. data/spec/integration/merb/tasks/merb.thor/gem_ext.rb +124 -124
  110. data/spec/integration/merb/tasks/merb.thor/main.thor +149 -149
  111. data/spec/integration/merb/tasks/merb.thor/ops.rb +93 -93
  112. data/spec/integration/merb/tasks/merb.thor/utils.rb +40 -40
  113. data/spec/integration/rack/Rakefile +5 -5
  114. data/spec/integration/rack/app.rb +89 -89
  115. data/spec/integration/rack/test/helper.rb +21 -21
  116. data/spec/integration/rack/test/webrat_rack_test.rb +73 -73
  117. data/spec/integration/rails/.gitignore +3 -3
  118. data/spec/integration/rails/Rakefile +30 -30
  119. data/spec/integration/rails/app/controllers/application.rb +15 -15
  120. data/spec/integration/rails/app/controllers/buttons_controller.rb +7 -7
  121. data/spec/integration/rails/app/controllers/fields_controller.rb +4 -4
  122. data/spec/integration/rails/app/controllers/links_controller.rb +7 -7
  123. data/spec/integration/rails/app/controllers/webrat_controller.rb +46 -46
  124. data/spec/integration/rails/app/helpers/buttons_helper.rb +2 -2
  125. data/spec/integration/rails/app/helpers/fields_helper.rb +2 -2
  126. data/spec/integration/rails/app/helpers/links_helper.rb +2 -2
  127. data/spec/integration/rails/app/views/buttons/show.html.erb +10 -10
  128. data/spec/integration/rails/app/views/fields/show.html.erb +8 -8
  129. data/spec/integration/rails/app/views/links/show.html.erb +5 -5
  130. data/spec/integration/rails/app/views/webrat/before_redirect_form.html.erb +3 -3
  131. data/spec/integration/rails/app/views/webrat/buttons.html.erb +10 -10
  132. data/spec/integration/rails/app/views/webrat/form.html.erb +27 -27
  133. data/spec/integration/rails/app/views/webrat/within.html.erb +2 -2
  134. data/spec/integration/rails/config/boot.rb +109 -109
  135. data/spec/integration/rails/config/environment.rb +12 -12
  136. data/spec/integration/rails/config/environments/development.rb +17 -17
  137. data/spec/integration/rails/config/environments/selenium.rb +22 -22
  138. data/spec/integration/rails/config/environments/test.rb +22 -22
  139. data/spec/integration/rails/config/initializers/inflections.rb +10 -10
  140. data/spec/integration/rails/config/initializers/mime_types.rb +5 -5
  141. data/spec/integration/rails/config/initializers/new_rails_defaults.rb +17 -17
  142. data/spec/integration/rails/config/locales/en.yml +4 -4
  143. data/spec/integration/rails/config/routes.rb +19 -19
  144. data/spec/integration/rails/public/404.html +29 -29
  145. data/spec/integration/rails/public/422.html +29 -29
  146. data/spec/integration/rails/public/500.html +33 -33
  147. data/spec/integration/rails/script/about +3 -3
  148. data/spec/integration/rails/script/console +3 -3
  149. data/spec/integration/rails/script/dbconsole +3 -3
  150. data/spec/integration/rails/script/destroy +3 -3
  151. data/spec/integration/rails/script/generate +3 -3
  152. data/spec/integration/rails/script/performance/benchmarker +3 -3
  153. data/spec/integration/rails/script/performance/profiler +3 -3
  154. data/spec/integration/rails/script/performance/request +3 -3
  155. data/spec/integration/rails/script/plugin +3 -3
  156. data/spec/integration/rails/script/process/inspector +3 -3
  157. data/spec/integration/rails/script/process/reaper +3 -3
  158. data/spec/integration/rails/script/process/spawner +3 -3
  159. data/spec/integration/rails/script/runner +3 -3
  160. data/spec/integration/rails/script/server +3 -3
  161. data/spec/integration/rails/test/integration/button_click_test.rb +80 -80
  162. data/spec/integration/rails/test/integration/fill_in_test.rb +24 -24
  163. data/spec/integration/rails/test/integration/link_click_test.rb +27 -27
  164. data/spec/integration/rails/test/integration/webrat_test.rb +122 -122
  165. data/spec/integration/rails/test/test_helper.rb +26 -26
  166. data/spec/integration/sinatra/Rakefile +5 -5
  167. data/spec/integration/sinatra/classic_app.rb +64 -64
  168. data/spec/integration/sinatra/modular_app.rb +16 -16
  169. data/spec/integration/sinatra/test/classic_app_test.rb +37 -37
  170. data/spec/integration/sinatra/test/modular_app_test.rb +18 -18
  171. data/spec/integration/sinatra/test/test_helper.rb +17 -17
  172. data/spec/private/core/configuration_spec.rb +87 -87
  173. data/spec/private/core/field_spec.rb +85 -85
  174. data/spec/private/core/link_spec.rb +24 -24
  175. data/spec/private/core/session_spec.rb +200 -200
  176. data/spec/private/mechanize/mechanize_adapter_spec.rb +73 -73
  177. data/spec/private/nokogiri_spec.rb +77 -77
  178. data/spec/private/rails/attaches_file_spec.rb +81 -81
  179. data/spec/private/rails/rails_adapter_spec.rb +86 -86
  180. data/spec/private/selenium/application_servers/rails_spec.rb +26 -26
  181. data/spec/public/basic_auth_spec.rb +24 -24
  182. data/spec/public/check_spec.rb +191 -191
  183. data/spec/public/choose_spec.rb +118 -118
  184. data/spec/public/click_area_spec.rb +106 -106
  185. data/spec/public/click_button_spec.rb +494 -494
  186. data/spec/public/click_link_spec.rb +511 -511
  187. data/spec/public/fill_in_spec.rb +224 -224
  188. data/spec/public/locators/field_by_xpath_spec.rb +19 -19
  189. data/spec/public/locators/field_labeled_spec.rb +172 -172
  190. data/spec/public/locators/field_with_id_spec.rb +16 -16
  191. data/spec/public/matchers/contain_spec.rb +114 -114
  192. data/spec/public/matchers/have_selector_spec.rb +146 -146
  193. data/spec/public/matchers/have_tag_spec.rb +39 -39
  194. data/spec/public/matchers/have_xpath_spec.rb +136 -136
  195. data/spec/public/reload_spec.rb +10 -10
  196. data/spec/public/save_and_open_spec.rb +70 -70
  197. data/spec/public/select_date_spec.rb +112 -112
  198. data/spec/public/select_datetime_spec.rb +137 -137
  199. data/spec/public/select_spec.rb +455 -455
  200. data/spec/public/select_time_spec.rb +100 -100
  201. data/spec/public/selenium/application_server_factory_spec.rb +49 -49
  202. data/spec/public/selenium/application_servers/external_spec.rb +12 -12
  203. data/spec/public/selenium/selenium_session_spec.rb +37 -37
  204. data/spec/public/set_hidden_field_spec.rb +5 -5
  205. data/spec/public/submit_form_spec.rb +5 -5
  206. data/spec/public/visit_spec.rb +58 -58
  207. data/spec/public/within_spec.rb +177 -177
  208. data/spec/spec.opts +1 -1
  209. data/spec/spec_helper.rb +54 -54
  210. data/webrat.gemspec +360 -0
  211. metadata +6 -5
@@ -1,72 +1,72 @@
1
- require "webrat/core_extensions/meta_class"
2
-
3
- module Webrat #:nodoc:
4
- module XML #:nodoc:
5
-
6
- def self.document(stringlike) #:nodoc:
7
- return stringlike.dom if stringlike.respond_to?(:dom)
8
-
9
- if Nokogiri::HTML::Document === stringlike
10
- stringlike
11
- elsif Nokogiri::XML::NodeSet === stringlike
12
- stringlike
13
- elsif stringlike.respond_to?(:body)
14
- Nokogiri::HTML(stringlike.body.to_s)
15
- else
16
- Nokogiri::HTML(stringlike.to_s)
17
- end
18
- end
19
-
20
- def self.html_document(stringlike) #:nodoc:
21
- return stringlike.dom if stringlike.respond_to?(:dom)
22
-
23
- if Nokogiri::HTML::Document === stringlike
24
- stringlike
25
- elsif Nokogiri::XML::NodeSet === stringlike
26
- stringlike
27
- elsif stringlike.respond_to?(:body)
28
- Nokogiri::HTML(stringlike.body.to_s)
29
- else
30
- Nokogiri::HTML(stringlike.to_s)
31
- end
32
- end
33
-
34
- def self.xml_document(stringlike) #:nodoc:
35
- return stringlike.dom if stringlike.respond_to?(:dom)
36
-
37
- if Nokogiri::HTML::Document === stringlike
38
- stringlike
39
- elsif Nokogiri::XML::NodeSet === stringlike
40
- stringlike
41
- elsif stringlike.respond_to?(:body)
42
- Nokogiri::XML(stringlike.body.to_s)
43
- else
44
- Nokogiri::XML(stringlike.to_s)
45
- end
46
- end
47
-
48
- def self.define_dom_method(object, dom) #:nodoc:
49
- object.meta_class.send(:define_method, :dom) do
50
- dom
51
- end
52
- end
53
-
54
- end
55
- end
56
-
57
- module Nokogiri #:nodoc:
58
- module CSS #:nodoc:
59
- class XPathVisitor #:nodoc:
60
-
61
- def visit_pseudo_class_text(node) #:nodoc:
62
- "@type='text'"
63
- end
64
-
65
- def visit_pseudo_class_password(node) #:nodoc:
66
- "@type='password'"
67
- end
68
-
69
- end
70
- end
71
- end
72
-
1
+ require "webrat/core_extensions/meta_class"
2
+
3
+ module Webrat #:nodoc:
4
+ module XML #:nodoc:
5
+
6
+ def self.document(stringlike) #:nodoc:
7
+ return stringlike.dom if stringlike.respond_to?(:dom)
8
+
9
+ if Nokogiri::HTML::Document === stringlike
10
+ stringlike
11
+ elsif Nokogiri::XML::NodeSet === stringlike
12
+ stringlike
13
+ elsif stringlike.respond_to?(:body)
14
+ Nokogiri::HTML(stringlike.body.to_s)
15
+ else
16
+ Nokogiri::HTML(stringlike.to_s)
17
+ end
18
+ end
19
+
20
+ def self.html_document(stringlike) #:nodoc:
21
+ return stringlike.dom if stringlike.respond_to?(:dom)
22
+
23
+ if Nokogiri::HTML::Document === stringlike
24
+ stringlike
25
+ elsif Nokogiri::XML::NodeSet === stringlike
26
+ stringlike
27
+ elsif stringlike.respond_to?(:body)
28
+ Nokogiri::HTML(stringlike.body.to_s)
29
+ else
30
+ Nokogiri::HTML(stringlike.to_s)
31
+ end
32
+ end
33
+
34
+ def self.xml_document(stringlike) #:nodoc:
35
+ return stringlike.dom if stringlike.respond_to?(:dom)
36
+
37
+ if Nokogiri::HTML::Document === stringlike
38
+ stringlike
39
+ elsif Nokogiri::XML::NodeSet === stringlike
40
+ stringlike
41
+ elsif stringlike.respond_to?(:body)
42
+ Nokogiri::XML(stringlike.body.to_s)
43
+ else
44
+ Nokogiri::XML(stringlike.to_s)
45
+ end
46
+ end
47
+
48
+ def self.define_dom_method(object, dom) #:nodoc:
49
+ object.meta_class.send(:define_method, :dom) do
50
+ dom
51
+ end
52
+ end
53
+
54
+ end
55
+ end
56
+
57
+ module Nokogiri #:nodoc:
58
+ module CSS #:nodoc:
59
+ class XPathVisitor #:nodoc:
60
+
61
+ def visit_pseudo_class_text(node) #:nodoc:
62
+ "@type='text'"
63
+ end
64
+
65
+ def visit_pseudo_class_password(node) #:nodoc:
66
+ "@type='password'"
67
+ end
68
+
69
+ end
70
+ end
71
+ end
72
+
data/lib/webrat/core.rb CHANGED
@@ -1,13 +1,13 @@
1
- require "webrat/core/configuration"
2
- require "webrat/core/xml"
3
- require "webrat/core/logging"
4
- require "webrat/core/elements/form"
5
- require "webrat/core/scope"
6
- require "webrat/core/elements/link"
7
- require "webrat/core/elements/area"
8
- require "webrat/core/elements/label"
9
- require "webrat/core/elements/select_option"
10
- require "webrat/core/session"
11
- require "webrat/core/methods"
12
- require "webrat/core/matchers"
13
- require "webrat/core/save_and_open_page"
1
+ require "webrat/core/configuration"
2
+ require "webrat/core/xml"
3
+ require "webrat/core/logging"
4
+ require "webrat/core/elements/form"
5
+ require "webrat/core/scope"
6
+ require "webrat/core/elements/link"
7
+ require "webrat/core/elements/area"
8
+ require "webrat/core/elements/label"
9
+ require "webrat/core/elements/select_option"
10
+ require "webrat/core/session"
11
+ require "webrat/core/methods"
12
+ require "webrat/core/matchers"
13
+ require "webrat/core/save_and_open_page"
@@ -1,58 +1,58 @@
1
- class Object #:nodoc:
2
- # An object is blank if it's false, empty, or a whitespace string.
3
- # For example, "", " ", +nil+, [], and {} are blank.
4
- #
5
- # This simplifies
6
- #
7
- # if !address.nil? && !address.empty?
8
- #
9
- # to
10
- #
11
- # if !address.blank?
12
- def blank?
13
- respond_to?(:empty?) ? empty? : !self
14
- end
15
-
16
- # An object is present if it's not blank.
17
- def present?
18
- !blank?
19
- end
20
- end
21
-
22
- class NilClass #:nodoc:
23
- def blank?
24
- true
25
- end
26
- end
27
-
28
- class FalseClass #:nodoc:
29
- def blank?
30
- true
31
- end
32
- end
33
-
34
- class TrueClass #:nodoc:
35
- def blank?
36
- false
37
- end
38
- end
39
-
40
- class Array #:nodoc:
41
- alias_method :blank?, :empty?
42
- end
43
-
44
- class Hash #:nodoc:
45
- alias_method :blank?, :empty?
46
- end
47
-
48
- class String #:nodoc:
49
- def blank?
50
- self !~ /\S/
51
- end
52
- end
53
-
54
- class Numeric #:nodoc:
55
- def blank?
56
- false
57
- end
58
- end
1
+ class Object #:nodoc:
2
+ # An object is blank if it's false, empty, or a whitespace string.
3
+ # For example, "", " ", +nil+, [], and {} are blank.
4
+ #
5
+ # This simplifies
6
+ #
7
+ # if !address.nil? && !address.empty?
8
+ #
9
+ # to
10
+ #
11
+ # if !address.blank?
12
+ def blank?
13
+ respond_to?(:empty?) ? empty? : !self
14
+ end
15
+
16
+ # An object is present if it's not blank.
17
+ def present?
18
+ !blank?
19
+ end
20
+ end
21
+
22
+ class NilClass #:nodoc:
23
+ def blank?
24
+ true
25
+ end
26
+ end
27
+
28
+ class FalseClass #:nodoc:
29
+ def blank?
30
+ true
31
+ end
32
+ end
33
+
34
+ class TrueClass #:nodoc:
35
+ def blank?
36
+ false
37
+ end
38
+ end
39
+
40
+ class Array #:nodoc:
41
+ alias_method :blank?, :empty?
42
+ end
43
+
44
+ class Hash #:nodoc:
45
+ alias_method :blank?, :empty?
46
+ end
47
+
48
+ class String #:nodoc:
49
+ def blank?
50
+ self !~ /\S/
51
+ end
52
+ end
53
+
54
+ class Numeric #:nodoc:
55
+ def blank?
56
+ false
57
+ end
58
+ end
@@ -1,8 +1,8 @@
1
- class Module #:nodoc:
2
- def webrat_deprecate(old_method_name, new_method_name)
3
- define_method old_method_name do |*args|
4
- warn "#{old_method_name} is deprecated. Use #{new_method_name} instead."
5
- __send__(new_method_name, *args)
6
- end
7
- end
8
- end
1
+ class Module #:nodoc:
2
+ def webrat_deprecate(old_method_name, new_method_name)
3
+ define_method old_method_name do |*args|
4
+ warn "#{old_method_name} is deprecated. Use #{new_method_name} instead."
5
+ __send__(new_method_name, *args)
6
+ end
7
+ end
8
+ end
@@ -1,12 +1,12 @@
1
- class Array #:nodoc:
2
-
3
- def detect_mapped
4
- each do |element|
5
- result = yield element
6
- return result if result
7
- end
8
-
9
- return nil
10
- end
11
-
12
- end
1
+ class Array #:nodoc:
2
+
3
+ def detect_mapped
4
+ each do |element|
5
+ result = yield element
6
+ return result if result
7
+ end
8
+
9
+ return nil
10
+ end
11
+
12
+ end
@@ -1,6 +1,6 @@
1
- class ::Object #:nodoc:
2
- def meta_class
3
- class << self; self end
4
- end
5
- end
6
-
1
+ class ::Object #:nodoc:
2
+ def meta_class
3
+ class << self; self end
4
+ end
5
+ end
6
+
@@ -1,5 +1,5 @@
1
- class NilClass #:nodoc:
2
- def to_param
3
- nil
4
- end
5
- end
1
+ class NilClass #:nodoc:
2
+ def to_param
3
+ nil
4
+ end
5
+ end
@@ -1,27 +1,27 @@
1
- class TCPSocket
2
-
3
- def self.wait_for_service_with_timeout(options)
4
- start_time = Time.now
5
-
6
- until listening_service?(options)
7
- verbose_wait
8
-
9
- if options[:timeout] && (Time.now > start_time + options[:timeout])
10
- raise SocketError.new("Socket did not open within #{options[:timeout]} seconds")
11
- end
12
- end
13
- end
14
-
15
- def self.wait_for_service_termination_with_timeout(options)
16
- start_time = Time.now
17
-
18
- while listening_service?(options)
19
- verbose_wait
20
-
21
- if options[:timeout] && (Time.now > start_time + options[:timeout])
22
- raise SocketError.new("Socket did not terminate within #{options[:timeout]} seconds")
23
- end
24
- end
25
- end
26
-
27
- end
1
+ class TCPSocket
2
+
3
+ def self.wait_for_service_with_timeout(options)
4
+ start_time = Time.now
5
+
6
+ until listening_service?(options)
7
+ verbose_wait
8
+
9
+ if options[:timeout] && (Time.now > start_time + options[:timeout])
10
+ raise SocketError.new("Socket did not open within #{options[:timeout]} seconds")
11
+ end
12
+ end
13
+ end
14
+
15
+ def self.wait_for_service_termination_with_timeout(options)
16
+ start_time = Time.now
17
+
18
+ while listening_service?(options)
19
+ verbose_wait
20
+
21
+ if options[:timeout] && (Time.now > start_time + options[:timeout])
22
+ raise SocketError.new("Socket did not terminate within #{options[:timeout]} seconds")
23
+ end
24
+ end
25
+ end
26
+
27
+ end
@@ -1,10 +1,10 @@
1
- module Merb #:nodoc:
2
- module Test #:nodoc:
3
- module RequestHelper #:nodoc:
4
- def request(uri, env = {})
5
- @_webrat_session ||= Webrat::MerbAdapter.new
6
- @_webrat_session.response = @_webrat_session.request(uri, env)
7
- end
8
- end
9
- end
10
- end
1
+ module Merb #:nodoc:
2
+ module Test #:nodoc:
3
+ module RequestHelper #:nodoc:
4
+ def request(uri, env = {})
5
+ @_webrat_session ||= Webrat::MerbAdapter.new
6
+ @_webrat_session.response = @_webrat_session.request(uri, env)
7
+ end
8
+ end
9
+ end
10
+ end
@@ -1,25 +1,25 @@
1
- require "action_controller"
2
- require "action_controller/integration"
3
-
4
- module ActionController #:nodoc:
5
- IntegrationTest.class_eval do
6
- include Webrat::Methods
7
- include Webrat::Matchers
8
-
9
- # The Rails version of within supports passing in a model and Webrat
10
- # will apply a scope based on Rails' dom_id for that model.
11
- #
12
- # Example:
13
- # within User.last do
14
- # click_link "Delete"
15
- # end
16
- def within(selector_or_object, &block)
17
- if selector_or_object.is_a?(String)
18
- super
19
- else
20
- super('#' + RecordIdentifier.dom_id(selector_or_object), &block)
21
- end
22
- end
23
-
24
- end
25
- end
1
+ require "action_controller"
2
+ require "action_controller/integration"
3
+
4
+ module ActionController #:nodoc:
5
+ IntegrationTest.class_eval do
6
+ include Webrat::Methods
7
+ include Webrat::Matchers
8
+
9
+ # The Rails version of within supports passing in a model and Webrat
10
+ # will apply a scope based on Rails' dom_id for that model.
11
+ #
12
+ # Example:
13
+ # within User.last do
14
+ # click_link "Delete"
15
+ # end
16
+ def within(selector_or_object, &block)
17
+ if selector_or_object.is_a?(String)
18
+ super
19
+ else
20
+ super('#' + RecordIdentifier.dom_id(selector_or_object), &block)
21
+ end
22
+ end
23
+
24
+ end
25
+ end
@@ -1,10 +1,10 @@
1
- # Supports using the matchers in controller, helper, and view specs if you're
2
- # using rspec-rails. Just add a require statement to spec/spec_helper.rb or env.rb:
3
- #
4
- # require 'webrat/rspec-rails'
5
- #
6
- require "webrat/core/matchers"
7
-
8
- Spec::Runner.configure do |config|
9
- config.include(Webrat::Matchers, :type => [:controller, :helper, :view])
10
- end
1
+ # Supports using the matchers in controller, helper, and view specs if you're
2
+ # using rspec-rails. Just add a require statement to spec/spec_helper.rb or env.rb:
3
+ #
4
+ # require 'webrat/rspec-rails'
5
+ #
6
+ require "webrat/core/matchers"
7
+
8
+ Spec::Runner.configure do |config|
9
+ config.include(Webrat::Matchers, :type => [:controller, :helper, :view])
10
+ end
@@ -1,11 +1,11 @@
1
- require "webrat/selenium"
2
-
3
- if defined?(ActionController::IntegrationTest)
4
- module ActionController #:nodoc:
5
- IntegrationTest.class_eval do
6
- include Webrat::Methods
7
- include Webrat::Selenium::Methods
8
- include Webrat::Selenium::Matchers
9
- end
10
- end
11
- end
1
+ require "webrat/selenium"
2
+
3
+ if defined?(ActionController::IntegrationTest)
4
+ module ActionController #:nodoc:
5
+ IntegrationTest.class_eval do
6
+ include Webrat::Methods
7
+ include Webrat::Selenium::Methods
8
+ include Webrat::Selenium::Matchers
9
+ end
10
+ end
11
+ end
data/lib/webrat/merb.rb CHANGED
@@ -1,9 +1,9 @@
1
- require "webrat"
2
-
3
- # This is a temporary hack to support backwards compatibility
4
- # with Merb 1.0.8 until it's updated to use the new Webrat.configure
5
- # syntax
6
-
7
- Webrat.configure do |config|
8
- config.mode = :merb
9
- end
1
+ require "webrat"
2
+
3
+ # This is a temporary hack to support backwards compatibility
4
+ # with Merb 1.0.8 until it's updated to use the new Webrat.configure
5
+ # syntax
6
+
7
+ Webrat.configure do |config|
8
+ config.mode = :merb
9
+ end
@@ -1,2 +1,2 @@
1
- warn("Requiring 'webrat/rspec-rails' is deprecated. Please require 'webrat/integrations/rspec-rails' instead")
2
- require "webrat/integrations/rspec-rails"
1
+ warn("Requiring 'webrat/rspec-rails' is deprecated. Please require 'webrat/integrations/rspec-rails' instead")
2
+ require "webrat/integrations/rspec-rails"
@@ -1,40 +1,40 @@
1
- module Webrat
2
- module Selenium
3
-
4
- class ApplicationServerFactory
5
-
6
- def self.app_server_instance
7
- case Webrat.configuration.application_framework
8
- when :sinatra
9
- require "webrat/selenium/application_servers/sinatra"
10
- return Webrat::Selenium::ApplicationServers::Sinatra.new
11
- when :merb
12
- require "webrat/selenium/application_servers/merb"
13
- return Webrat::Selenium::ApplicationServers::Merb.new
14
- when :rails
15
- require "webrat/selenium/application_servers/rails"
16
- return Webrat::Selenium::ApplicationServers::Rails.new
17
- when :external
18
- require "webrat/selenium/application_servers/external"
19
- return Webrat::Selenium::ApplicationServers::External.new
20
- else
21
- raise WebratError.new(<<-STR)
22
- Unknown Webrat application_framework: #{Webrat.configuration.application_framework.inspect}
23
-
24
- Please ensure you have a Webrat configuration block that specifies an application_framework
25
- in your test_helper.rb, spec_helper.rb, or env.rb (for Cucumber).
26
-
27
- For example:
28
-
29
- Webrat.configure do |config|
30
- # ...
31
- config.application_framework = :rails
32
- end
33
- STR
34
- end
35
- end
36
-
37
- end
38
-
39
- end
40
- end
1
+ module Webrat
2
+ module Selenium
3
+
4
+ class ApplicationServerFactory
5
+
6
+ def self.app_server_instance
7
+ case Webrat.configuration.application_framework
8
+ when :sinatra
9
+ require "webrat/selenium/application_servers/sinatra"
10
+ return Webrat::Selenium::ApplicationServers::Sinatra.new
11
+ when :merb
12
+ require "webrat/selenium/application_servers/merb"
13
+ return Webrat::Selenium::ApplicationServers::Merb.new
14
+ when :rails
15
+ require "webrat/selenium/application_servers/rails"
16
+ return Webrat::Selenium::ApplicationServers::Rails.new
17
+ when :external
18
+ require "webrat/selenium/application_servers/external"
19
+ return Webrat::Selenium::ApplicationServers::External.new
20
+ else
21
+ raise WebratError.new(<<-STR)
22
+ Unknown Webrat application_framework: #{Webrat.configuration.application_framework.inspect}
23
+
24
+ Please ensure you have a Webrat configuration block that specifies an application_framework
25
+ in your test_helper.rb, spec_helper.rb, or env.rb (for Cucumber).
26
+
27
+ For example:
28
+
29
+ Webrat.configure do |config|
30
+ # ...
31
+ config.application_framework = :rails
32
+ end
33
+ STR
34
+ end
35
+ end
36
+
37
+ end
38
+
39
+ end
40
+ end