frameworks-capybara 0.1.9 → 0.1.10
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/Gemfile +1 -0
- data/Gemfile.lock +4 -0
- data/VERSION +1 -1
- data/frameworks-capybara.gemspec +5 -2
- data/lib/frameworks/cucumber.rb +20 -0
- data/spec/frameworks_cucumber_spec.rb +9 -0
- metadata +27 -13
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.1.
|
1
|
+
0.1.10
|
data/frameworks-capybara.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{frameworks-capybara}
|
8
|
-
s.version = "0.1.
|
8
|
+
s.version = "0.1.10"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["mcrmfc"]
|
12
|
-
s.date = %q{2012-02-
|
12
|
+
s.date = %q{2012-02-13}
|
13
13
|
s.description = %q{gem to aid setup of Capybara for testing bbc sites}
|
14
14
|
s.email = %q{mcrobbins@gmail.com}
|
15
15
|
s.extra_rdoc_files = [
|
@@ -69,6 +69,7 @@ Gem::Specification.new do |s|
|
|
69
69
|
s.add_development_dependency(%q<rcov>, [">= 0"])
|
70
70
|
s.add_development_dependency(%q<rspec>, [">= 0"])
|
71
71
|
s.add_development_dependency(%q<capybara>, ["< 1.0.0"])
|
72
|
+
s.add_development_dependency(%q<w3c_validators>, [">= 0"])
|
72
73
|
s.add_development_dependency(%q<capybara-mechanize>, [">= 0"])
|
73
74
|
s.add_development_dependency(%q<cucumber>, [">= 0"])
|
74
75
|
s.add_development_dependency(%q<selenium-webdriver>, [">= 0"])
|
@@ -83,6 +84,7 @@ Gem::Specification.new do |s|
|
|
83
84
|
s.add_dependency(%q<rcov>, [">= 0"])
|
84
85
|
s.add_dependency(%q<rspec>, [">= 0"])
|
85
86
|
s.add_dependency(%q<capybara>, ["< 1.0.0"])
|
87
|
+
s.add_dependency(%q<w3c_validators>, [">= 0"])
|
86
88
|
s.add_dependency(%q<capybara-mechanize>, [">= 0"])
|
87
89
|
s.add_dependency(%q<cucumber>, [">= 0"])
|
88
90
|
s.add_dependency(%q<selenium-webdriver>, [">= 0"])
|
@@ -98,6 +100,7 @@ Gem::Specification.new do |s|
|
|
98
100
|
s.add_dependency(%q<rcov>, [">= 0"])
|
99
101
|
s.add_dependency(%q<rspec>, [">= 0"])
|
100
102
|
s.add_dependency(%q<capybara>, ["< 1.0.0"])
|
103
|
+
s.add_dependency(%q<w3c_validators>, [">= 0"])
|
101
104
|
s.add_dependency(%q<capybara-mechanize>, [">= 0"])
|
102
105
|
s.add_dependency(%q<cucumber>, [">= 0"])
|
103
106
|
s.add_dependency(%q<selenium-webdriver>, [">= 0"])
|
data/lib/frameworks/cucumber.rb
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
require 'frameworks/capybara'
|
2
|
+
require 'w3c_validators'
|
2
3
|
require 'monkey-patches/cucumber-patches'
|
3
4
|
|
4
5
|
if(ENV['XVFB']=='true')
|
@@ -13,6 +14,7 @@ end
|
|
13
14
|
|
14
15
|
module Frameworks
|
15
16
|
module EnvHelper
|
17
|
+
include W3CValidators
|
16
18
|
#Generate base urls to use in Cucumber step defs
|
17
19
|
def generate_base_urls
|
18
20
|
set_scheme
|
@@ -31,8 +33,26 @@ module Frameworks
|
|
31
33
|
@static_base_url = @static_prefix.chop + @bbc_domain if ENV['ENVIRONMENT'] == 'live'
|
32
34
|
@open_base_url = @open_prefix + ENV['ENVIRONMENT'] + @bbc_domain
|
33
35
|
end
|
36
|
+
proxy = ENV['http_proxy'] || ENV['HTTP_PROXY']
|
37
|
+
@proxy_host = ENV['http_proxy'].scan(/http:\/\/(.*):80/).to_s if proxy
|
34
38
|
end
|
35
39
|
|
40
|
+
def validate_online(src)
|
41
|
+
|
42
|
+
@validator = MarkupValidator.new({:proxy_host => @proxy_host,:proxy_port => 80})
|
43
|
+
|
44
|
+
@validator.set_doctype!(:xhtml)
|
45
|
+
results = @validator.validate_text(src)
|
46
|
+
|
47
|
+
if results.errors.length > 0
|
48
|
+
results.errors.each do |err|
|
49
|
+
puts err.to_s
|
50
|
+
end
|
51
|
+
raise "W3C Validation of " + url + " failed."
|
52
|
+
end
|
53
|
+
end
|
54
|
+
|
55
|
+
|
36
56
|
def set_scheme
|
37
57
|
ENV['SCHEME']=='https' ? scheme = 'https' : scheme = 'http'
|
38
58
|
@www_prefix = "#{scheme}://www."
|
@@ -49,5 +49,14 @@ describe Frameworks::EnvHelper do
|
|
49
49
|
@static_base_url.should == 'https://static.foo.bbc.co.uk'
|
50
50
|
@open_base_url.should == 'https://open.foo.bbc.co.uk'
|
51
51
|
end
|
52
|
+
|
53
|
+
=begin
|
54
|
+
#don't want to push proxy addr online
|
55
|
+
it "should be able to validate xhtml online" do
|
56
|
+
@proxy_host = ''
|
57
|
+
xhtml = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head><title>a</title></head><body><p>a</p></body></html>'
|
58
|
+
validate_online(xhtml)
|
59
|
+
end
|
60
|
+
=end
|
52
61
|
end
|
53
62
|
end
|
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:
|
4
|
+
hash: 15
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 1
|
9
|
-
-
|
10
|
-
version: 0.1.
|
9
|
+
- 10
|
10
|
+
version: 0.1.10
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- mcrmfc
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2012-02-
|
18
|
+
date: 2012-02-13 00:00:00 +00:00
|
19
19
|
default_executable:
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|
@@ -120,7 +120,7 @@ dependencies:
|
|
120
120
|
segments:
|
121
121
|
- 0
|
122
122
|
version: "0"
|
123
|
-
name:
|
123
|
+
name: w3c_validators
|
124
124
|
version_requirements: *id007
|
125
125
|
- !ruby/object:Gem::Dependency
|
126
126
|
type: :development
|
@@ -134,7 +134,7 @@ dependencies:
|
|
134
134
|
segments:
|
135
135
|
- 0
|
136
136
|
version: "0"
|
137
|
-
name:
|
137
|
+
name: capybara-mechanize
|
138
138
|
version_requirements: *id008
|
139
139
|
- !ruby/object:Gem::Dependency
|
140
140
|
type: :development
|
@@ -148,10 +148,10 @@ dependencies:
|
|
148
148
|
segments:
|
149
149
|
- 0
|
150
150
|
version: "0"
|
151
|
-
name:
|
151
|
+
name: cucumber
|
152
152
|
version_requirements: *id009
|
153
153
|
- !ruby/object:Gem::Dependency
|
154
|
-
type: :
|
154
|
+
type: :development
|
155
155
|
prerelease: false
|
156
156
|
requirement: &id010 !ruby/object:Gem::Requirement
|
157
157
|
none: false
|
@@ -162,7 +162,7 @@ dependencies:
|
|
162
162
|
segments:
|
163
163
|
- 0
|
164
164
|
version: "0"
|
165
|
-
name:
|
165
|
+
name: selenium-webdriver
|
166
166
|
version_requirements: *id010
|
167
167
|
- !ruby/object:Gem::Dependency
|
168
168
|
type: :runtime
|
@@ -176,7 +176,7 @@ dependencies:
|
|
176
176
|
segments:
|
177
177
|
- 0
|
178
178
|
version: "0"
|
179
|
-
name: capybara
|
179
|
+
name: capybara
|
180
180
|
version_requirements: *id011
|
181
181
|
- !ruby/object:Gem::Dependency
|
182
182
|
type: :runtime
|
@@ -190,12 +190,26 @@ dependencies:
|
|
190
190
|
segments:
|
191
191
|
- 0
|
192
192
|
version: "0"
|
193
|
-
name:
|
193
|
+
name: capybara-mechanize
|
194
194
|
version_requirements: *id012
|
195
195
|
- !ruby/object:Gem::Dependency
|
196
|
-
type: :
|
196
|
+
type: :runtime
|
197
197
|
prerelease: false
|
198
198
|
requirement: &id013 !ruby/object:Gem::Requirement
|
199
|
+
none: false
|
200
|
+
requirements:
|
201
|
+
- - ">="
|
202
|
+
- !ruby/object:Gem::Version
|
203
|
+
hash: 3
|
204
|
+
segments:
|
205
|
+
- 0
|
206
|
+
version: "0"
|
207
|
+
name: headless
|
208
|
+
version_requirements: *id013
|
209
|
+
- !ruby/object:Gem::Dependency
|
210
|
+
type: :development
|
211
|
+
prerelease: false
|
212
|
+
requirement: &id014 !ruby/object:Gem::Requirement
|
199
213
|
none: false
|
200
214
|
requirements:
|
201
215
|
- - ">="
|
@@ -207,7 +221,7 @@ dependencies:
|
|
207
221
|
- 0
|
208
222
|
version: 2.6.0
|
209
223
|
name: rspec
|
210
|
-
version_requirements: *
|
224
|
+
version_requirements: *id014
|
211
225
|
description: gem to aid setup of Capybara for testing bbc sites
|
212
226
|
email: mcrobbins@gmail.com
|
213
227
|
executables: []
|