benschwarz-webrat 0.3.2.1

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 (65) hide show
  1. data/History.txt +184 -0
  2. data/MIT-LICENSE.txt +19 -0
  3. data/README.rdoc +81 -0
  4. data/Rakefile +104 -0
  5. data/install.rb +1 -0
  6. data/lib/webrat.rb +34 -0
  7. data/lib/webrat/core.rb +13 -0
  8. data/lib/webrat/core/configuration.rb +44 -0
  9. data/lib/webrat/core/elements/area.rb +31 -0
  10. data/lib/webrat/core/elements/element.rb +29 -0
  11. data/lib/webrat/core/elements/field.rb +386 -0
  12. data/lib/webrat/core/elements/form.rb +103 -0
  13. data/lib/webrat/core/elements/label.rb +31 -0
  14. data/lib/webrat/core/elements/link.rb +94 -0
  15. data/lib/webrat/core/elements/select_option.rb +35 -0
  16. data/lib/webrat/core/locators.rb +20 -0
  17. data/lib/webrat/core/locators/area_locator.rb +38 -0
  18. data/lib/webrat/core/locators/button_locator.rb +54 -0
  19. data/lib/webrat/core/locators/field_by_id_locator.rb +37 -0
  20. data/lib/webrat/core/locators/field_labeled_locator.rb +50 -0
  21. data/lib/webrat/core/locators/field_locator.rb +25 -0
  22. data/lib/webrat/core/locators/field_named_locator.rb +41 -0
  23. data/lib/webrat/core/locators/form_locator.rb +19 -0
  24. data/lib/webrat/core/locators/label_locator.rb +34 -0
  25. data/lib/webrat/core/locators/link_locator.rb +66 -0
  26. data/lib/webrat/core/locators/locator.rb +20 -0
  27. data/lib/webrat/core/locators/select_option_locator.rb +59 -0
  28. data/lib/webrat/core/logging.rb +21 -0
  29. data/lib/webrat/core/matchers.rb +4 -0
  30. data/lib/webrat/core/matchers/have_content.rb +55 -0
  31. data/lib/webrat/core/matchers/have_selector.rb +37 -0
  32. data/lib/webrat/core/matchers/have_tag.rb +57 -0
  33. data/lib/webrat/core/matchers/have_xpath.rb +83 -0
  34. data/lib/webrat/core/methods.rb +54 -0
  35. data/lib/webrat/core/mime.rb +29 -0
  36. data/lib/webrat/core/scope.rb +318 -0
  37. data/lib/webrat/core/session.rb +241 -0
  38. data/lib/webrat/core/xml.rb +99 -0
  39. data/lib/webrat/core/xml/hpricot.rb +19 -0
  40. data/lib/webrat/core/xml/nokogiri.rb +44 -0
  41. data/lib/webrat/core/xml/rexml.rb +24 -0
  42. data/lib/webrat/core_extensions/blank.rb +58 -0
  43. data/lib/webrat/core_extensions/deprecate.rb +8 -0
  44. data/lib/webrat/core_extensions/detect_mapped.rb +12 -0
  45. data/lib/webrat/core_extensions/hash_with_indifferent_access.rb +131 -0
  46. data/lib/webrat/core_extensions/meta_class.rb +6 -0
  47. data/lib/webrat/core_extensions/nil_to_param.rb +5 -0
  48. data/lib/webrat/mechanize.rb +43 -0
  49. data/lib/webrat/merb.rb +77 -0
  50. data/lib/webrat/rack.rb +26 -0
  51. data/lib/webrat/rails.rb +88 -0
  52. data/lib/webrat/rails/redirect_actions.rb +18 -0
  53. data/lib/webrat/rspec-rails.rb +13 -0
  54. data/lib/webrat/selenium.rb +58 -0
  55. data/lib/webrat/selenium/location_strategy_javascript/button.js +12 -0
  56. data/lib/webrat/selenium/location_strategy_javascript/label.js +16 -0
  57. data/lib/webrat/selenium/location_strategy_javascript/webrat.js +5 -0
  58. data/lib/webrat/selenium/location_strategy_javascript/webratlink.js +9 -0
  59. data/lib/webrat/selenium/location_strategy_javascript/webratlinkwithin.js +15 -0
  60. data/lib/webrat/selenium/location_strategy_javascript/webratselectwithoption.js +5 -0
  61. data/lib/webrat/selenium/selenium_extensions.js +6 -0
  62. data/lib/webrat/selenium/selenium_session.rb +186 -0
  63. data/lib/webrat/sinatra.rb +21 -0
  64. data/vendor/selenium-server.jar +0 -0
  65. metadata +144 -0
@@ -0,0 +1,21 @@
1
+ require 'webrat/rack'
2
+ require 'sinatra'
3
+ require 'sinatra/test/methods'
4
+
5
+ module Webrat
6
+ class SinatraSession < RackSession #:nodoc:
7
+ include Sinatra::Test::Methods
8
+
9
+ %w(get head post put delete).each do |verb|
10
+ define_method(verb) do |*args| # (path, data, headers = nil)
11
+ path, data, headers = *args
12
+ params = data.merge({:env => headers || {}})
13
+ self.__send__("#{verb}_it", path, params)
14
+ follow! while @response.redirect?
15
+ end
16
+ end
17
+
18
+ end
19
+ end
20
+
21
+ Webrat.configuration.mode = :sinatra
Binary file
metadata ADDED
@@ -0,0 +1,144 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: benschwarz-webrat
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.3.2.1
5
+ platform: ruby
6
+ authors:
7
+ - Bryan Helmkamp
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2008-11-30 00:00:00 -08:00
13
+ default_executable:
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: selenium-client
17
+ version_requirement:
18
+ version_requirements: !ruby/object:Gem::Requirement
19
+ requirements:
20
+ - - ">="
21
+ - !ruby/object:Gem::Version
22
+ version: 1.2.9
23
+ version:
24
+ - !ruby/object:Gem::Dependency
25
+ name: nokogiri
26
+ version_requirement:
27
+ version_requirements: !ruby/object:Gem::Requirement
28
+ requirements:
29
+ - - ">="
30
+ - !ruby/object:Gem::Version
31
+ version: 1.0.6
32
+ version:
33
+ description: Webrat. Ruby Acceptance Testing for Web applications
34
+ email: bryan@brynary.com
35
+ executables: []
36
+
37
+ extensions: []
38
+
39
+ extra_rdoc_files:
40
+ - README.rdoc
41
+ - MIT-LICENSE.txt
42
+ files:
43
+ - History.txt
44
+ - install.rb
45
+ - MIT-LICENSE.txt
46
+ - README.rdoc
47
+ - Rakefile
48
+ - lib/webrat
49
+ - lib/webrat/core
50
+ - lib/webrat/core/configuration.rb
51
+ - lib/webrat/core/elements
52
+ - lib/webrat/core/elements/area.rb
53
+ - lib/webrat/core/elements/element.rb
54
+ - lib/webrat/core/elements/field.rb
55
+ - lib/webrat/core/elements/form.rb
56
+ - lib/webrat/core/elements/label.rb
57
+ - lib/webrat/core/elements/link.rb
58
+ - lib/webrat/core/elements/select_option.rb
59
+ - lib/webrat/core/locators
60
+ - lib/webrat/core/locators/area_locator.rb
61
+ - lib/webrat/core/locators/button_locator.rb
62
+ - lib/webrat/core/locators/field_by_id_locator.rb
63
+ - lib/webrat/core/locators/field_labeled_locator.rb
64
+ - lib/webrat/core/locators/field_locator.rb
65
+ - lib/webrat/core/locators/field_named_locator.rb
66
+ - lib/webrat/core/locators/form_locator.rb
67
+ - lib/webrat/core/locators/label_locator.rb
68
+ - lib/webrat/core/locators/link_locator.rb
69
+ - lib/webrat/core/locators/locator.rb
70
+ - lib/webrat/core/locators/select_option_locator.rb
71
+ - lib/webrat/core/locators.rb
72
+ - lib/webrat/core/logging.rb
73
+ - lib/webrat/core/matchers
74
+ - lib/webrat/core/matchers/have_content.rb
75
+ - lib/webrat/core/matchers/have_selector.rb
76
+ - lib/webrat/core/matchers/have_tag.rb
77
+ - lib/webrat/core/matchers/have_xpath.rb
78
+ - lib/webrat/core/matchers.rb
79
+ - lib/webrat/core/methods.rb
80
+ - lib/webrat/core/mime.rb
81
+ - lib/webrat/core/scope.rb
82
+ - lib/webrat/core/session.rb
83
+ - lib/webrat/core/xml
84
+ - lib/webrat/core/xml/hpricot.rb
85
+ - lib/webrat/core/xml/nokogiri.rb
86
+ - lib/webrat/core/xml/rexml.rb
87
+ - lib/webrat/core/xml.rb
88
+ - lib/webrat/core.rb
89
+ - lib/webrat/core_extensions
90
+ - lib/webrat/core_extensions/blank.rb
91
+ - lib/webrat/core_extensions/deprecate.rb
92
+ - lib/webrat/core_extensions/detect_mapped.rb
93
+ - lib/webrat/core_extensions/hash_with_indifferent_access.rb
94
+ - lib/webrat/core_extensions/meta_class.rb
95
+ - lib/webrat/core_extensions/nil_to_param.rb
96
+ - lib/webrat/mechanize.rb
97
+ - lib/webrat/merb.rb
98
+ - lib/webrat/rack.rb
99
+ - lib/webrat/rails
100
+ - lib/webrat/rails/redirect_actions.rb
101
+ - lib/webrat/rails.rb
102
+ - lib/webrat/rspec-rails.rb
103
+ - lib/webrat/selenium
104
+ - lib/webrat/selenium/location_strategy_javascript
105
+ - lib/webrat/selenium/location_strategy_javascript/button.js
106
+ - lib/webrat/selenium/location_strategy_javascript/label.js
107
+ - lib/webrat/selenium/location_strategy_javascript/webrat.js
108
+ - lib/webrat/selenium/location_strategy_javascript/webratlink.js
109
+ - lib/webrat/selenium/location_strategy_javascript/webratlinkwithin.js
110
+ - lib/webrat/selenium/location_strategy_javascript/webratselectwithoption.js
111
+ - lib/webrat/selenium/selenium_extensions.js
112
+ - lib/webrat/selenium/selenium_session.rb
113
+ - lib/webrat/selenium.rb
114
+ - lib/webrat/sinatra.rb
115
+ - lib/webrat.rb
116
+ - vendor/selenium-server.jar
117
+ has_rdoc: true
118
+ homepage: http://github.com/brynary/webrat
119
+ post_install_message:
120
+ rdoc_options: []
121
+
122
+ require_paths:
123
+ - lib
124
+ required_ruby_version: !ruby/object:Gem::Requirement
125
+ requirements:
126
+ - - ">="
127
+ - !ruby/object:Gem::Version
128
+ version: "0"
129
+ version:
130
+ required_rubygems_version: !ruby/object:Gem::Requirement
131
+ requirements:
132
+ - - ">="
133
+ - !ruby/object:Gem::Version
134
+ version: "0"
135
+ version:
136
+ requirements: []
137
+
138
+ rubyforge_project: webrat
139
+ rubygems_version: 1.2.0
140
+ signing_key:
141
+ specification_version: 2
142
+ summary: Webrat. Ruby Acceptance Testing for Web applications
143
+ test_files: []
144
+