html-validator 0.0.2 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2) hide show
  1. data/lib/html-validator.rb +18 -2
  2. metadata +9 -9
@@ -1,17 +1,33 @@
1
1
  require 'nokogiri'
2
+ require 'test-unit'
2
3
 
3
4
  module Test
4
5
  module Unit
5
6
  module Assertions
6
7
  def assert_is_xhtml_trans_valid(page)
7
- schema_path = File.join(File.dirname(__FILE__), '..', 'schemas', 'xhtml1-transitional.xsd')
8
+ schema_path = schema_path_for('xhtml1-transitional.xsd')
8
9
  schema = Nokogiri::XML::Schema(open(schema_path))
9
10
 
11
+ validate(page, schema)
12
+ end
13
+
14
+ def assert_is_html5_valid(page)
15
+ schema_path = schema_path_for('html5', 'html5.rng')
16
+ schema = Nokogiri::XML::RelaxNG(File.open(schema_path))
17
+
18
+ validate(page, schema)
19
+ end
20
+
21
+ def schema_path_for(*relative_name)
22
+ File.join(File.dirname(__FILE__), '..', 'schemas', *relative_name)
23
+ end
24
+
25
+ def validate(page, schema)
10
26
  errors = schema.validate(Nokogiri::XML(page))
11
27
 
12
28
  if errors.any?
13
29
  message = "#{errors.count} errors:\n"
14
- errors.each{|error| message << "#{error}\n"}
30
+ errors.each { |error| message << "#{error}\n" }
15
31
  raise AssertionFailedError.new(message)
16
32
  end
17
33
  end
metadata CHANGED
@@ -1,25 +1,24 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: html-validator
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
5
4
  prerelease:
5
+ version: 0.1.0
6
6
  platform: ruby
7
7
  authors:
8
8
  - TeamIguana
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-09-18 00:00:00.000000000 Z
12
+ date: 2013-03-25 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
- name: rake
15
+ type: :runtime
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
20
20
  - !ruby/object:Gem::Version
21
21
  version: '0'
22
- type: :runtime
23
22
  prerelease: false
24
23
  version_requirements: !ruby/object:Gem::Requirement
25
24
  none: false
@@ -27,15 +26,15 @@ dependencies:
27
26
  - - ! '>='
28
27
  - !ruby/object:Gem::Version
29
28
  version: '0'
29
+ name: rake
30
30
  - !ruby/object:Gem::Dependency
31
- name: test-unit
31
+ type: :runtime
32
32
  requirement: !ruby/object:Gem::Requirement
33
33
  none: false
34
34
  requirements:
35
35
  - - ! '>='
36
36
  - !ruby/object:Gem::Version
37
37
  version: '0'
38
- type: :runtime
39
38
  prerelease: false
40
39
  version_requirements: !ruby/object:Gem::Requirement
41
40
  none: false
@@ -43,15 +42,15 @@ dependencies:
43
42
  - - ! '>='
44
43
  - !ruby/object:Gem::Version
45
44
  version: '0'
45
+ name: test-unit
46
46
  - !ruby/object:Gem::Dependency
47
- name: nokogiri
47
+ type: :runtime
48
48
  requirement: !ruby/object:Gem::Requirement
49
49
  none: false
50
50
  requirements:
51
51
  - - ! '>='
52
52
  - !ruby/object:Gem::Version
53
53
  version: '0'
54
- type: :runtime
55
54
  prerelease: false
56
55
  version_requirements: !ruby/object:Gem::Requirement
57
56
  none: false
@@ -59,6 +58,7 @@ dependencies:
59
58
  - - ! '>='
60
59
  - !ruby/object:Gem::Version
61
60
  version: '0'
61
+ name: nokogiri
62
62
  description:
63
63
  email:
64
64
  executables: []
@@ -88,7 +88,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
88
88
  version: '0'
89
89
  requirements: []
90
90
  rubyforge_project:
91
- rubygems_version: 1.8.24
91
+ rubygems_version: 1.8.23
92
92
  signing_key:
93
93
  specification_version: 3
94
94
  summary: Assertions to validate an html document