frameworks-capybara 0.1.9 → 0.1.10

Sign up to get free protection for your applications and to get access to all the features.
data/Gemfile CHANGED
@@ -12,6 +12,7 @@ group :development do
12
12
  gem "rcov", ">= 0"
13
13
  gem "rspec", ">= 0"
14
14
  gem "capybara", "< 1.0.0"
15
+ gem "w3c_validators", ">=0"
15
16
  gem "capybara-mechanize", ">=0"
16
17
  gem "cucumber", ">= 0"
17
18
  gem "selenium-webdriver", ">= 0"
data/Gemfile.lock CHANGED
@@ -60,6 +60,9 @@ GEM
60
60
  rubyzip
61
61
  shoulda (2.11.3)
62
62
  term-ansicolor (1.0.6)
63
+ w3c_validators (1.2)
64
+ json
65
+ nokogiri
63
66
  xpath (0.1.4)
64
67
  nokogiri (~> 1.3)
65
68
 
@@ -76,3 +79,4 @@ DEPENDENCIES
76
79
  rspec
77
80
  selenium-webdriver
78
81
  shoulda
82
+ w3c_validators
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.9
1
+ 0.1.10
@@ -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.9"
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-01}
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"])
@@ -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: 9
4
+ hash: 15
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 1
9
- - 9
10
- version: 0.1.9
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-01 00:00:00 +00:00
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: capybara-mechanize
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: cucumber
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: selenium-webdriver
151
+ name: cucumber
152
152
  version_requirements: *id009
153
153
  - !ruby/object:Gem::Dependency
154
- type: :runtime
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: capybara
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-mechanize
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: headless
193
+ name: capybara-mechanize
194
194
  version_requirements: *id012
195
195
  - !ruby/object:Gem::Dependency
196
- type: :development
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: *id013
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: []