frameworks-capybara 0.2.19 → 0.2.20

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.
data/CHANGES ADDED
@@ -0,0 +1,6 @@
1
+ 0.2.20
2
+ validate_online() now takes optional hash of parameters to pass to MarkupValidator
3
+ Updated proxy handling to pick up port and to work without protocol or port.
4
+
5
+ 0.2.19
6
+ Present production release
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- frameworks-capybara (0.2.19)
4
+ frameworks-capybara (0.2.20)
5
5
  capybara (>= 1.0.0)
6
6
  capybara-celerity
7
7
  capybara-mechanize (>= 0.3.0)
data/README.rdoc CHANGED
@@ -1,4 +1,4 @@
1
- = Build Status {<img src="https://secure.travis-ci.org/mcrmfc/frameworks-capybara.png"/>}[https://secure.travis-ci.org/mcrmfc/frameworks-capybara]
1
+ = Build Status {<img src="https://secure.travis-ci.org/bbc-frameworks/frameworks-capybara.png"/>}[https://secure.travis-ci.org/bbc-frameworks/frameworks-capybara]
2
2
 
3
3
  = frameworks-capybara
4
4
 
@@ -74,7 +74,7 @@ This gem also sets up a number of 'base urls' for you to use in your tests, thes
74
74
  @base_static_url
75
75
  @base_open_url
76
76
 
77
- Finally this gem contains some useful monkey-patches to core libraries e.g. Capybara, Selenium-Webdriver and Cucumber.
77
+ Finally this gem contains some useful monkey-patches to core libraries e.g. Capybara-Mechanize, Selenium-Webdriver and Cucumber.
78
78
 
79
79
  == Release instructions
80
80
 
@@ -49,12 +49,24 @@ module Frameworks
49
49
  end
50
50
 
51
51
  proxy = ENV['http_proxy'] || ENV['HTTP_PROXY']
52
- @proxy_host = proxy.scan(/http:\/\/(.*):80/)[0][0] if proxy && !proxy.empty?
52
+ proxy_parts = proxy.scan(/(?:http:\/\/)?([^\:]+)(?::(\d+))?/) if proxy && !proxy.empty?
53
+ if proxy_parts && !proxy_parts.empty?
54
+ @proxy_host = proxy_parts[0][0]
55
+ if proxy_parts[0][1]
56
+ @proxy_port = proxy_parts[0][1]
57
+ else
58
+ @proxy_port = "80"
59
+ end
60
+ end
53
61
  end
54
62
 
55
- def validate_online(src)
63
+ def validate_online(src, validator_args = nil)
56
64
 
57
- @validator = MarkupValidator.new({:proxy_host => @proxy_host,:proxy_port => 80})
65
+ args = {:proxy_host => @proxy_host,:proxy_port => @proxy_port}
66
+ if(validator_args != nil)
67
+ args = args.merge(validator_args)
68
+ end
69
+ @validator = MarkupValidator.new(args)
58
70
 
59
71
  @validator.set_doctype!(:xhtml)
60
72
  begin
data/lib/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module FrameworksCapybara
2
- VERSION = '0.2.19'
2
+ VERSION = '0.2.20'
3
3
  end
@@ -114,18 +114,44 @@ describe Frameworks::EnvHelper do
114
114
  @open_base_url.should == 'https://open.foo.bbc.co.uk'
115
115
  end
116
116
 
117
- it "should be able to set proxy host correctly to use in tests using HTTP_PROXY env variable" do
117
+ it "should be able to set proxy host and port correctly to use in tests using HTTP_PROXY env variable" do
118
118
  ENV['ENVIRONMENT'] = 'foo'
119
- ENV['HTTP_PROXY'] = 'http://mycache.co.uk:80'
119
+ ENV['HTTP_PROXY'] = 'http://mycache.co.uk:8080'
120
120
  generate_base_urls
121
121
  @proxy_host.should == "mycache.co.uk"
122
+ @proxy_port.should == "8080"
122
123
  end
123
124
 
124
125
  it "should be able to set proxy host correctly to use in tests using http_proxy env variable" do
125
126
  ENV['ENVIRONMENT'] = 'foo'
126
- ENV['http_proxy'] = 'http://mycache.co.uk:80'
127
+ ENV['http_proxy'] = 'http://mycache.co.uk:8080'
128
+ generate_base_urls
129
+ @proxy_host.should == "mycache.co.uk"
130
+ @proxy_port.should == "8080"
131
+ end
132
+
133
+ it "should be able to use 80 as default proxy port when none specified" do
134
+ ENV['ENVIRONMENT'] = 'foo'
135
+ ENV['http_proxy'] = 'http://mycache.co.uk'
127
136
  generate_base_urls
128
137
  @proxy_host.should == "mycache.co.uk"
138
+ @proxy_port.should == "80"
139
+ end
140
+
141
+ it "should be able to handle an environment variable which doesn't have the protocol" do
142
+ ENV['ENVIRONMENT'] = 'foo'
143
+ ENV['http_proxy'] = 'mycache.co.uk'
144
+ generate_base_urls
145
+ @proxy_host.should == "mycache.co.uk"
146
+ @proxy_port.should == "80"
147
+ end
148
+
149
+ it "should be able to have an empty http_proxy environment variable" do
150
+ ENV['ENVIRONMENT'] = 'foo'
151
+ ENV['http_proxy'] = ''
152
+ generate_base_urls
153
+ @proxy_host.should be_nil
154
+ @proxy_port.should be_nil
129
155
  end
130
156
 
131
157
  =begin
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: frameworks-capybara
3
3
  version: !ruby/object:Gem::Version
4
- hash: 49
5
- prerelease: false
4
+ hash: 63
5
+ prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 2
9
- - 19
10
- version: 0.2.19
9
+ - 20
10
+ version: 0.2.20
11
11
  platform: ruby
12
12
  authors:
13
13
  - matt robbins
@@ -15,11 +15,10 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2012-09-05 00:00:00 +01:00
19
- default_executable:
18
+ date: 2012-12-07 00:00:00 Z
20
19
  dependencies:
21
20
  - !ruby/object:Gem::Dependency
22
- requirement: &id001 !ruby/object:Gem::Requirement
21
+ version_requirements: &id001 !ruby/object:Gem::Requirement
23
22
  none: false
24
23
  requirements:
25
24
  - - ">="
@@ -30,12 +29,12 @@ dependencies:
30
29
  - 0
31
30
  - 0
32
31
  version: 1.0.0
32
+ prerelease: false
33
33
  type: :runtime
34
34
  name: capybara
35
- prerelease: false
36
- version_requirements: *id001
35
+ requirement: *id001
37
36
  - !ruby/object:Gem::Dependency
38
- requirement: &id002 !ruby/object:Gem::Requirement
37
+ version_requirements: &id002 !ruby/object:Gem::Requirement
39
38
  none: false
40
39
  requirements:
41
40
  - - ">="
@@ -46,12 +45,12 @@ dependencies:
46
45
  - 3
47
46
  - 0
48
47
  version: 0.3.0
48
+ prerelease: false
49
49
  type: :runtime
50
50
  name: capybara-mechanize
51
- prerelease: false
52
- version_requirements: *id002
51
+ requirement: *id002
53
52
  - !ruby/object:Gem::Dependency
54
- requirement: &id003 !ruby/object:Gem::Requirement
53
+ version_requirements: &id003 !ruby/object:Gem::Requirement
55
54
  none: false
56
55
  requirements:
57
56
  - - ">="
@@ -60,12 +59,12 @@ dependencies:
60
59
  segments:
61
60
  - 0
62
61
  version: "0"
62
+ prerelease: false
63
63
  type: :runtime
64
64
  name: json
65
- prerelease: false
66
- version_requirements: *id003
65
+ requirement: *id003
67
66
  - !ruby/object:Gem::Dependency
68
- requirement: &id004 !ruby/object:Gem::Requirement
67
+ version_requirements: &id004 !ruby/object:Gem::Requirement
69
68
  none: false
70
69
  requirements:
71
70
  - - ">="
@@ -74,12 +73,12 @@ dependencies:
74
73
  segments:
75
74
  - 0
76
75
  version: "0"
76
+ prerelease: false
77
77
  type: :runtime
78
78
  name: headless
79
- prerelease: false
80
- version_requirements: *id004
79
+ requirement: *id004
81
80
  - !ruby/object:Gem::Dependency
82
- requirement: &id005 !ruby/object:Gem::Requirement
81
+ version_requirements: &id005 !ruby/object:Gem::Requirement
83
82
  none: false
84
83
  requirements:
85
84
  - - ">="
@@ -88,12 +87,12 @@ dependencies:
88
87
  segments:
89
88
  - 0
90
89
  version: "0"
90
+ prerelease: false
91
91
  type: :runtime
92
92
  name: capybara-celerity
93
- prerelease: false
94
- version_requirements: *id005
93
+ requirement: *id005
95
94
  - !ruby/object:Gem::Dependency
96
- requirement: &id006 !ruby/object:Gem::Requirement
95
+ version_requirements: &id006 !ruby/object:Gem::Requirement
97
96
  none: false
98
97
  requirements:
99
98
  - - ">="
@@ -102,12 +101,12 @@ dependencies:
102
101
  segments:
103
102
  - 0
104
103
  version: "0"
104
+ prerelease: false
105
105
  type: :runtime
106
106
  name: w3c_validators
107
- prerelease: false
108
- version_requirements: *id006
107
+ requirement: *id006
109
108
  - !ruby/object:Gem::Dependency
110
- requirement: &id007 !ruby/object:Gem::Requirement
109
+ version_requirements: &id007 !ruby/object:Gem::Requirement
111
110
  none: false
112
111
  requirements:
113
112
  - - ">="
@@ -118,12 +117,12 @@ dependencies:
118
117
  - 10
119
118
  - 5
120
119
  version: 0.10.5
120
+ prerelease: false
121
121
  type: :runtime
122
122
  name: cucumber
123
- prerelease: false
124
- version_requirements: *id007
123
+ requirement: *id007
125
124
  - !ruby/object:Gem::Dependency
126
- requirement: &id008 !ruby/object:Gem::Requirement
125
+ version_requirements: &id008 !ruby/object:Gem::Requirement
127
126
  none: false
128
127
  requirements:
129
128
  - - ">="
@@ -132,12 +131,12 @@ dependencies:
132
131
  segments:
133
132
  - 0
134
133
  version: "0"
134
+ prerelease: false
135
135
  type: :development
136
136
  name: rake
137
- prerelease: false
138
- version_requirements: *id008
137
+ requirement: *id008
139
138
  - !ruby/object:Gem::Dependency
140
- requirement: &id009 !ruby/object:Gem::Requirement
139
+ version_requirements: &id009 !ruby/object:Gem::Requirement
141
140
  none: false
142
141
  requirements:
143
142
  - - ">="
@@ -148,10 +147,10 @@ dependencies:
148
147
  - 0
149
148
  - 0
150
149
  version: 1.0.0
150
+ prerelease: false
151
151
  type: :development
152
152
  name: rspec
153
- prerelease: false
154
- version_requirements: *id009
153
+ requirement: *id009
155
154
  description: Gem to ease the pain of managing capybara driver config and provide a home for common utils and patches
156
155
  email:
157
156
  - mcrobbins@gmail.com
@@ -166,6 +165,7 @@ files:
166
165
  - .gitignore
167
166
  - .rspec
168
167
  - .travis.yml
168
+ - CHANGES
169
169
  - Gemfile
170
170
  - Gemfile.lock
171
171
  - LICENSE.txt
@@ -190,7 +190,6 @@ files:
190
190
  - spec/profiles.ini
191
191
  - spec/spec_helper.rb
192
192
  - spec/unit_test_monkeypatches.rb
193
- has_rdoc: true
194
193
  homepage:
195
194
  licenses: []
196
195
 
@@ -220,7 +219,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
220
219
  requirements: []
221
220
 
222
221
  rubyforge_project:
223
- rubygems_version: 1.3.7
222
+ rubygems_version: 1.8.24
224
223
  signing_key:
225
224
  specification_version: 3
226
225
  summary: Gem to ease the pain of managing capybara driver config and provide a home for common utils and patches