libxml-ruby 3.1.0-x64-mingw32 → 3.2.0-x64-mingw32

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 (57) hide show
  1. checksums.yaml +4 -4
  2. data/HISTORY +8 -0
  3. data/ext/libxml/extconf.h +3 -0
  4. data/ext/libxml/extconf.rb +30 -26
  5. data/ext/libxml/ruby_libxml.h +0 -8
  6. data/ext/libxml/ruby_xml.c +40 -0
  7. data/ext/libxml/ruby_xml_document.c +1 -1
  8. data/ext/libxml/ruby_xml_dtd.c +6 -8
  9. data/ext/libxml/ruby_xml_node.c +1 -1
  10. data/ext/libxml/ruby_xml_parser_context.c +1 -1
  11. data/ext/libxml/ruby_xml_version.h +3 -3
  12. data/lib/2.7/libxml_ruby.so +0 -0
  13. data/lib/libxml-ruby.rb +30 -0
  14. data/lib/libxml.rb +3 -28
  15. data/libxml-ruby.gemspec +2 -2
  16. data/test/test_attr.rb +18 -18
  17. data/test/test_attr_decl.rb +8 -8
  18. data/test/test_attributes.rb +10 -10
  19. data/test/test_canonicalize.rb +16 -24
  20. data/test/test_deprecated_require.rb +3 -3
  21. data/test/test_document.rb +118 -112
  22. data/test/test_document_write.rb +39 -88
  23. data/test/test_dtd.rb +23 -23
  24. data/test/test_encoding.rb +15 -15
  25. data/test/test_encoding_sax.rb +3 -3
  26. data/test/test_error.rb +51 -51
  27. data/test/test_helper.rb +2 -9
  28. data/test/test_html_parser.rb +30 -30
  29. data/test/test_html_parser_context.rb +6 -6
  30. data/test/test_namespace.rb +16 -16
  31. data/test/test_namespaces.rb +25 -25
  32. data/test/test_node.rb +36 -30
  33. data/test/test_node_cdata.rb +10 -10
  34. data/test/test_node_comment.rb +6 -6
  35. data/test/test_node_copy.rb +2 -2
  36. data/test/test_node_edit.rb +16 -16
  37. data/test/test_node_pi.rb +7 -7
  38. data/test/test_node_text.rb +6 -6
  39. data/test/test_node_write.rb +16 -26
  40. data/test/test_node_xlink.rb +6 -6
  41. data/test/test_parser.rb +68 -72
  42. data/test/test_parser_context.rb +28 -28
  43. data/test/test_properties.rb +5 -5
  44. data/test/test_reader.rb +80 -85
  45. data/test/test_relaxng.rb +11 -11
  46. data/test/test_sax_parser.rb +28 -28
  47. data/test/test_schema.rb +24 -24
  48. data/test/test_suite.rb +3 -4
  49. data/test/test_traversal.rb +4 -4
  50. data/test/test_writer.rb +50 -52
  51. data/test/test_xinclude.rb +3 -3
  52. data/test/test_xml.rb +114 -102
  53. data/test/test_xpath.rb +22 -22
  54. data/test/test_xpath_context.rb +5 -5
  55. data/test/test_xpath_expression.rb +6 -6
  56. data/test/test_xpointer.rb +15 -15
  57. metadata +7 -5
@@ -1,11 +1,11 @@
1
1
  # encoding: UTF-8
2
2
 
3
- require File.expand_path('../test_helper', __FILE__)
3
+ require_relative './test_helper'
4
4
 
5
5
 
6
6
  class TestDtd < Minitest::Test
7
7
  def setup
8
- xp = XML::Parser.string(<<-EOS)
8
+ xp = LibXML::XML::Parser.string(<<-EOS)
9
9
  <root>
10
10
  <head a="ee" id="1">Colorado</head>
11
11
  <descr>Lots of nice mountains</descr>
@@ -19,7 +19,7 @@ class TestDtd < Minitest::Test
19
19
  end
20
20
 
21
21
  def dtd
22
- XML::Dtd.new(<<-EOS)
22
+ LibXML::XML::Dtd.new(<<-EOS)
23
23
  <!ELEMENT root (head, descr)>
24
24
  <!ELEMENT head (#PCDATA)>
25
25
  <!ATTLIST head
@@ -31,13 +31,13 @@ class TestDtd < Minitest::Test
31
31
  end
32
32
 
33
33
  def test_internal_subset
34
- xhtml_dtd = XML::Dtd.new "-//W3C//DTD XHTML 1.0 Transitional//EN", "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd", nil, nil, true
34
+ xhtml_dtd = LibXML::XML::Dtd.new "-//W3C//DTD XHTML 1.0 Transitional//EN", "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd", nil, nil, true
35
35
  assert xhtml_dtd.name.nil?
36
36
  assert_equal "-//W3C//DTD XHTML 1.0 Transitional//EN", xhtml_dtd.external_id
37
37
  assert_equal "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd", xhtml_dtd.uri
38
38
  assert_equal "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd", xhtml_dtd.system_id
39
39
 
40
- xhtml_dtd = XML::Dtd.new "-//W3C//DTD XHTML 1.0 Transitional//EN", "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd", "xhtml1", nil, true
40
+ xhtml_dtd = LibXML::XML::Dtd.new "-//W3C//DTD XHTML 1.0 Transitional//EN", "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd", "xhtml1", nil, true
41
41
  assert_equal "xhtml1", xhtml_dtd.name
42
42
  assert_equal "-//W3C//DTD XHTML 1.0 Transitional//EN", xhtml_dtd.external_id
43
43
  assert_equal "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd", xhtml_dtd.uri
@@ -45,13 +45,13 @@ class TestDtd < Minitest::Test
45
45
  end
46
46
 
47
47
  def test_external_subset
48
- xhtml_dtd = XML::Dtd.new "-//W3C//DTD XHTML 1.0 Transitional//EN", "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd", nil
48
+ xhtml_dtd = LibXML::XML::Dtd.new "-//W3C//DTD XHTML 1.0 Transitional//EN", "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd", nil
49
49
  assert xhtml_dtd.name.nil?
50
50
  assert_equal "-//W3C//DTD XHTML 1.0 Transitional//EN", xhtml_dtd.external_id
51
51
  assert_equal "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd", xhtml_dtd.uri
52
52
  assert_equal "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd", xhtml_dtd.system_id
53
53
 
54
- xhtml_dtd = XML::Dtd.new "-//W3C//DTD XHTML 1.0 Transitional//EN", "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd", "xhtml1"
54
+ xhtml_dtd = LibXML::XML::Dtd.new "-//W3C//DTD XHTML 1.0 Transitional//EN", "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd", "xhtml1"
55
55
  assert_equal "xhtml1", xhtml_dtd.name
56
56
  assert_equal "-//W3C//DTD XHTML 1.0 Transitional//EN", xhtml_dtd.external_id
57
57
  assert_equal "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd", xhtml_dtd.uri
@@ -63,28 +63,28 @@ class TestDtd < Minitest::Test
63
63
  end
64
64
 
65
65
  def test_node_type
66
- assert_equal(XML::Node::DTD_NODE, dtd.node_type)
66
+ assert_equal(LibXML::XML::Node::DTD_NODE, dtd.node_type)
67
67
  end
68
68
 
69
69
  def test_invalid
70
- new_node = XML::Node.new('invalid', 'this will mess up validation')
70
+ new_node = LibXML::XML::Node.new('invalid', 'this will mess up validation')
71
71
  @doc.root << new_node
72
72
 
73
- error = assert_raises(XML::Error) do
73
+ error = assert_raises(LibXML::XML::Error) do
74
74
  @doc.validate(dtd)
75
75
  end
76
76
 
77
77
  # Check the error worked
78
78
  refute_nil(error)
79
- assert_kind_of(XML::Error, error)
79
+ assert_kind_of(LibXML::XML::Error, error)
80
80
  assert_equal("Error: No declaration for element invalid.", error.message)
81
- assert_equal(XML::Error::VALID, error.domain)
82
- assert_equal(XML::Error::DTD_UNKNOWN_ELEM, error.code)
83
- assert_equal(XML::Error::ERROR, error.level)
81
+ assert_equal(LibXML::XML::Error::VALID, error.domain)
82
+ assert_equal(LibXML::XML::Error::DTD_UNKNOWN_ELEM, error.code)
83
+ assert_equal(LibXML::XML::Error::ERROR, error.level)
84
84
  assert_nil(error.file)
85
85
  assert_nil(error.line)
86
86
  assert_equal('invalid', error.str1)
87
- assert_equal('invalid', error.str2)
87
+ assert_nil(error.str2)
88
88
  assert_nil(error.str3)
89
89
  assert_equal(0, error.int1)
90
90
  assert_equal(0, error.int2)
@@ -101,28 +101,28 @@ class TestDtd < Minitest::Test
101
101
  EOS
102
102
 
103
103
  errors = Array.new
104
- XML::Error.set_handler do |error|
104
+ LibXML::XML::Error.set_handler do |error|
105
105
  errors << error
106
106
  end
107
107
 
108
- XML.default_load_external_dtd = false
109
- XML::Parser.string(xml).parse
108
+ LibXML::XML.default_load_external_dtd = false
109
+ LibXML::XML::Parser.string(xml).parse
110
110
  assert_equal(0, errors.length)
111
111
 
112
112
  errors.clear
113
- XML.default_load_external_dtd = true
114
- XML::Parser.string(xml).parse
113
+ LibXML::XML.default_load_external_dtd = true
114
+ LibXML::XML::Parser.string(xml).parse
115
115
  assert_equal(1, errors.length)
116
116
  assert_equal("Warning: failed to load external entity \"test.dtd\" at :1.",
117
117
  errors[0].to_s)
118
118
 
119
119
  errors = Array.new
120
- XML::Parser.string(xml, :options => XML::Parser::Options::DTDLOAD).parse
120
+ LibXML::XML::Parser.string(xml, :options => LibXML::XML::Parser::Options::DTDLOAD).parse
121
121
  assert_equal(1, errors.length)
122
122
  assert_equal("Warning: failed to load external entity \"test.dtd\" at :1.",
123
123
  errors[0].to_s)
124
124
  ensure
125
- XML.default_load_external_dtd = false
126
- XML::Error.reset_handler
125
+ LibXML::XML.default_load_external_dtd = false
126
+ LibXML::XML::Error.reset_handler
127
127
  end
128
128
  end
@@ -1,6 +1,6 @@
1
1
  # encoding: UTF-8
2
2
 
3
- require File.expand_path('../test_helper', __FILE__)
3
+ require_relative './test_helper'
4
4
 
5
5
  # Code UTF8 Latin1 Hex
6
6
  # m 109 109 6D
@@ -39,24 +39,24 @@ class TestEncoding < Minitest::Test
39
39
  file = file_for_encoding(encoding)
40
40
 
41
41
  # Strip spaces to make testing easier
42
- XML.default_keep_blanks = false
43
- @doc = XML::Document.file(file)
44
- XML.default_keep_blanks = true
42
+ LibXML::XML.default_keep_blanks = false
43
+ @doc = LibXML::XML::Document.file(file)
44
+ LibXML::XML.default_keep_blanks = true
45
45
  end
46
46
 
47
47
  def test_encoding
48
- doc = XML::Document.new
49
- assert_equal(XML::Encoding::NONE, doc.encoding)
50
- assert_equal(Encoding::ASCII_8BIT, doc.rb_encoding) if defined?(Encoding)
48
+ doc = LibXML::XML::Document.new
49
+ assert_equal(LibXML::XML::Encoding::NONE, doc.encoding)
50
+ assert_equal(Encoding::ASCII_8BIT, doc.rb_encoding)
51
51
 
52
52
  file = File.expand_path(File.join(File.dirname(__FILE__), 'model/bands.xml'))
53
- doc = XML::Document.file(file)
54
- assert_equal(XML::Encoding::UTF_8, doc.encoding)
55
- assert_equal(Encoding::UTF_8, doc.rb_encoding) if defined?(Encoding)
53
+ doc = LibXML::XML::Document.file(file)
54
+ assert_equal(LibXML::XML::Encoding::UTF_8, doc.encoding)
55
+ assert_equal(Encoding::UTF_8, doc.rb_encoding)
56
56
 
57
- doc.encoding = XML::Encoding::ISO_8859_1
58
- assert_equal(XML::Encoding::ISO_8859_1, doc.encoding)
59
- assert_equal(Encoding::ISO8859_1, doc.rb_encoding) if defined?(Encoding)
57
+ doc.encoding = LibXML::XML::Encoding::ISO_8859_1
58
+ assert_equal(LibXML::XML::Encoding::ISO_8859_1, doc.encoding)
59
+ assert_equal(Encoding::ISO8859_1, doc.rb_encoding)
60
60
  end
61
61
 
62
62
  def test_no_internal_encoding_iso_8859_1
@@ -123,7 +123,7 @@ class TestEncoding < Minitest::Test
123
123
  end
124
124
 
125
125
  def test_encoding_conversions
126
- assert_equal("UTF-8", XML::Encoding.to_s(XML::Encoding::UTF_8))
127
- assert_equal(XML::Encoding::UTF_8, XML::Encoding.from_s("UTF-8"))
126
+ assert_equal("UTF-8", LibXML::XML::Encoding.to_s(LibXML::XML::Encoding::UTF_8))
127
+ assert_equal(LibXML::XML::Encoding::UTF_8, LibXML::XML::Encoding.from_s("UTF-8"))
128
128
  end
129
129
  end
@@ -1,5 +1,5 @@
1
1
  # encoding: UTF-8
2
- require File.expand_path('../test_helper', __FILE__)
2
+ require_relative './test_helper'
3
3
 
4
4
  class SaxEncodingCallbacks
5
5
  attr_reader :encoding
@@ -102,13 +102,13 @@ class TestEncodingSax < Minitest::Test
102
102
  end
103
103
 
104
104
  def test_encoding_iso_8859_1
105
- parser = XML::SaxParser.file(file_for_encoding(Encoding::ISO_8859_1))
105
+ parser = LibXML::XML::SaxParser.file(file_for_encoding(Encoding::ISO_8859_1))
106
106
  parser.callbacks = SaxEncodingCallbacks.new
107
107
  parser.parse
108
108
  end
109
109
 
110
110
  def test_encoding_utf8
111
- parser = XML::SaxParser.file(file_for_encoding(Encoding::UTF_8))
111
+ parser = LibXML::XML::SaxParser.file(file_for_encoding(Encoding::UTF_8))
112
112
  parser.callbacks = SaxEncodingCallbacks.new
113
113
  parser.parse
114
114
  end
@@ -1,42 +1,42 @@
1
1
  # encoding: UTF-8
2
2
 
3
- require File.expand_path('../test_helper', __FILE__)
3
+ require_relative './test_helper'
4
4
  require 'stringio'
5
5
 
6
6
  class TestError < Minitest::Test
7
7
  # def test_error_codes
8
- # assert_equal(4, XML::Error::DTD)
9
- # assert_equal(4, XML::Error.const_get('DTD'))
8
+ # assert_equal(4, LibXML::XML::Error::DTD)
9
+ # assert_equal(4, LibXML::XML::Error.const_get('DTD'))
10
10
  #
11
- # assert_equal(4, XML::Error::DOCUMENT_EMPTY)
12
- # assert_equal(4, XML::Error.const_get('DOCUMENT_EMPTY'))
11
+ # assert_equal(4, LibXML::XML::Error::DOCUMENT_EMPTY)
12
+ # assert_equal(4, LibXML::XML::Error.const_get('DOCUMENT_EMPTY'))
13
13
  # end
14
14
  #
15
15
  # def test_invalid_handler
16
16
  # assert_raises(RuntimeError) do
17
- # XML::Error.set_handler
17
+ # LibXML::XML::Error.set_handler
18
18
  # end
19
19
  # end
20
20
  #
21
21
  # def test_handler
22
22
  # exception = nil
23
- # XML::Error.set_handler do |error|
23
+ # LibXML::XML::Error.set_handler do |error|
24
24
  # exception = error
25
25
  # end
26
26
  #
27
27
  # # Raise the error
28
- # error = assert_raises(XML::Error) do
29
- # XML::Reader.string('<foo').read
28
+ # error = assert_raises(LibXML::XML::Error) do
29
+ # LibXML::XML::Reader.string('<foo').read
30
30
  # end
31
31
  # assert_equal(exception, error)
32
32
  #
33
33
  # # Check the handler worked
34
34
  # refute_nil(exception)
35
- # assert_kind_of(XML::Error, exception)
35
+ # assert_kind_of(LibXML::XML::Error, exception)
36
36
  # assert_equal("Fatal error: Couldn't find end of Start Tag foo at :1.", exception.message)
37
- # assert_equal(XML::Error::PARSER, exception.domain)
38
- # assert_equal(XML::Error::GT_REQUIRED, exception.code)
39
- # assert_equal(XML::Error::FATAL, exception.level)
37
+ # assert_equal(LibXML::XML::Error::PARSER, exception.domain)
38
+ # assert_equal(LibXML::XML::Error::GT_REQUIRED, exception.code)
39
+ # assert_equal(LibXML::XML::Error::FATAL, exception.level)
40
40
  # assert_nil(exception.file)
41
41
  # assert_equal(1, exception.line)
42
42
  # assert_equal('foo', exception.str1)
@@ -49,36 +49,36 @@ class TestError < Minitest::Test
49
49
  #
50
50
  # def test_reset_handler
51
51
  # exception = nil
52
- # XML::Error.set_handler do |error|
52
+ # LibXML::XML::Error.set_handler do |error|
53
53
  # exception = error
54
54
  # end
55
55
  #
56
- # XML::Error.reset_handler
57
- # XML::Reader.string('<foo')
56
+ # LibXML::XML::Error.reset_handler
57
+ # LibXML::XML::Reader.string('<foo')
58
58
  # assert_nil(exception)
59
59
  # end
60
60
  #
61
61
  # def test_get_handler
62
- # assert_respond_to(XML::Error, :get_handler)
63
- # assert_equal(0, XML::Error.method(:get_handler).arity)
62
+ # assert_respond_to(LibXML::XML::Error, :get_handler)
63
+ # assert_equal(0, LibXML::XML::Error.method(:get_handler).arity)
64
64
  #
65
- # saved_handler = XML::Error.get_handler
66
- # XML::Error.set_handler{ puts "New handler" }
67
- # refute_equal(XML::Error.get_handler, saved_handler)
65
+ # saved_handler = LibXML::XML::Error.get_handler
66
+ # LibXML::XML::Error.set_handler{ puts "New handler" }
67
+ # refute_equal(LibXML::XML::Error.get_handler, saved_handler)
68
68
  #
69
- # XML::Error.set_handler(&saved_handler)
70
- # assert_equal(XML::Error.get_handler, saved_handler)
69
+ # LibXML::XML::Error.set_handler(&saved_handler)
70
+ # assert_equal(LibXML::XML::Error.get_handler, saved_handler)
71
71
  # end
72
72
  #
73
73
  # def test_verbose_handler
74
- # XML::Error.set_handler(&XML::Error::VERBOSE_HANDLER)
74
+ # LibXML::XML::Error.set_handler(&LibXML::XML::Error::VERBOSE_HANDLER)
75
75
  # output = StringIO.new
76
76
  # original_stderr = Object::STDERR
77
77
  #
78
78
  # Object.const_set(:STDERR, output)
79
79
  # begin
80
- # assert_raises(XML::Error) do
81
- # XML::Parser.string('<foo><bar/></foz>').parse
80
+ # assert_raises(LibXML::XML::Error) do
81
+ # LibXML::XML::Parser.string('<foo><bar/></foz>').parse
82
82
  # end
83
83
  # ensure
84
84
  # Object.const_set(:STDERR, original_stderr)
@@ -87,14 +87,14 @@ class TestError < Minitest::Test
87
87
  # end
88
88
  #
89
89
  # def test_no_hanlder
90
- # XML::Error.reset_handler
90
+ # LibXML::XML::Error.reset_handler
91
91
  # output = StringIO.new
92
92
  # original_stderr = Object::STDERR
93
93
  #
94
94
  # Object.const_set(:STDERR, output)
95
95
  # begin
96
- # assert_raises(XML::Error) do
97
- # XML::Parser.string('<foo><bar/></foz>').parse
96
+ # assert_raises(LibXML::XML::Error) do
97
+ # LibXML::XML::Parser.string('<foo><bar/></foz>').parse
98
98
  # end
99
99
  # ensure
100
100
  # Object.const_set(:STDERR, original_stderr)
@@ -103,41 +103,41 @@ class TestError < Minitest::Test
103
103
  # end
104
104
  #
105
105
  # def test_parse_error
106
- # exception = assert_raises(XML::Error) do
107
- # XML::Parser.string('<foo><bar/></foz>').parse
106
+ # exception = assert_raises(LibXML::XML::Error) do
107
+ # LibXML::XML::Parser.string('<foo><bar/></foz>').parse
108
108
  # end
109
109
  #
110
- # assert_instance_of(XML::Error, exception)
110
+ # assert_instance_of(LibXML::XML::Error, exception)
111
111
  # assert_equal("Fatal error: Opening and ending tag mismatch: foo line 1 and foz at :1.", exception.message)
112
- # assert_equal(XML::Error::PARSER, exception.domain)
113
- # assert_equal(XML::Error::TAG_NAME_MISMATCH, exception.code)
114
- # assert_equal(XML::Error::FATAL, exception.level)
112
+ # assert_equal(LibXML::XML::Error::PARSER, exception.domain)
113
+ # assert_equal(LibXML::XML::Error::TAG_NAME_MISMATCH, exception.code)
114
+ # assert_equal(LibXML::XML::Error::FATAL, exception.level)
115
115
  # assert_nil(exception.file)
116
116
  # assert_equal(1, exception.line)
117
117
  # end
118
118
  #
119
119
  # def test_xpath_error
120
- # doc = XML::Document.file(File.join(File.dirname(__FILE__), 'model/soap.xml'))
120
+ # doc = LibXML::XML::Document.file(File.join(File.dirname(__FILE__), 'model/soap.xml'))
121
121
  #
122
- # exception = assert_raises(XML::Error) do
122
+ # exception = assert_raises(LibXML::XML::Error) do
123
123
  # doc.find('/foo[bar=test')
124
124
  # end
125
125
  #
126
- # assert_instance_of(XML::Error, exception)
126
+ # assert_instance_of(LibXML::XML::Error, exception)
127
127
  # assert_equal("Error: Invalid predicate.", exception.message)
128
- # assert_equal(XML::Error::XPATH, exception.domain)
129
- # assert_equal(XML::Error::XPATH_INVALID_PREDICATE_ERROR, exception.code)
130
- # assert_equal(XML::Error::ERROR, exception.level)
128
+ # assert_equal(LibXML::XML::Error::XPATH, exception.domain)
129
+ # assert_equal(LibXML::XML::Error::XPATH_INVALID_PREDICATE_ERROR, exception.code)
130
+ # assert_equal(LibXML::XML::Error::ERROR, exception.level)
131
131
  # assert_nil(exception.file)
132
132
  # assert_nil(nil)
133
133
  # end
134
134
 
135
135
  def test_double_parse
136
- XML::Parser.register_error_handler(lambda {|msg| nil })
137
- parser = XML::Parser.string("<test>something</test>")
136
+ LibXML::XML::Parser.register_error_handler(lambda {|msg| nil })
137
+ parser = LibXML::XML::Parser.string("<test>something</test>")
138
138
  parser.parse
139
139
 
140
- error = assert_raises(XML::Error) do
140
+ error = assert_raises(LibXML::XML::Error) do
141
141
  # Try parsing a second time
142
142
  parser.parse
143
143
  end
@@ -146,7 +146,7 @@ class TestError < Minitest::Test
146
146
  end
147
147
 
148
148
  # def test_libxml_parser_empty_string
149
- # xp = XML::Parser.new
149
+ # xp = LibXML::XML::Parser.new
150
150
  #
151
151
  # error = assert_raises(TypeError) do
152
152
  # xp.string = nil
@@ -160,19 +160,19 @@ class TestError < Minitest::Test
160
160
  # end
161
161
  #
162
162
  # def test_error_domain_to_s
163
- # exception = assert_raises(XML::Error) do
164
- # XML::Parser.string('<foo href="http://example.org/cgi?k1=v1&k2=v2"></foo>').parse
163
+ # exception = assert_raises(LibXML::XML::Error) do
164
+ # LibXML::XML::Parser.string('<foo href="http://example.org/cgi?k1=v1&k2=v2"></foo>').parse
165
165
  # end
166
166
  #
167
- # assert_equal(XML::Error::PARSER, exception.domain)
167
+ # assert_equal(LibXML::XML::Error::PARSER, exception.domain)
168
168
  # assert_equal("PARSER",exception.domain_to_s)
169
169
  # end
170
170
  #
171
171
  # def test_error_code_to_s
172
- # exception = assert_raises(XML::Error) do
173
- # XML::Parser.string('<foo href="http://example.org/cgi?k1=v1&k2=v2"></foo>').parse
172
+ # exception = assert_raises(LibXML::XML::Error) do
173
+ # LibXML::XML::Parser.string('<foo href="http://example.org/cgi?k1=v1&k2=v2"></foo>').parse
174
174
  # end
175
- # assert_equal(XML::Error::ENTITYREF_SEMICOL_MISSING, exception.code)
175
+ # assert_equal(LibXML::XML::Error::ENTITYREF_SEMICOL_MISSING, exception.code)
176
176
  # assert_equal("ENTITYREF_SEMICOL_MISSING",exception.code_to_s)
177
177
  # end
178
178
  end
@@ -2,13 +2,6 @@
2
2
 
3
3
  # To make testing/debugging easier, test within this source tree versus an installed gem
4
4
 
5
- dir = File.dirname(__FILE__)
6
- root = File.expand_path(File.join(dir, '..'))
7
- lib = File.expand_path(File.join(root, 'lib'))
8
- ext = File.expand_path(File.join(root, 'ext', 'libxml'))
9
-
10
- $LOAD_PATH << lib
11
- $LOAD_PATH << ext
12
-
13
- require 'xml'
5
+ require 'bundler/setup'
14
6
  require 'minitest/autorun'
7
+ require 'libxml-ruby'
@@ -1,6 +1,6 @@
1
1
  # encoding: UTF-8
2
2
 
3
- require File.expand_path('../test_helper', __FILE__)
3
+ require_relative './test_helper'
4
4
  require 'stringio'
5
5
 
6
6
  class HTMLParserTest < Minitest::Test
@@ -10,15 +10,15 @@ class HTMLParserTest < Minitest::Test
10
10
 
11
11
  # ----- Sources ------
12
12
  def test_file
13
- xp = XML::HTMLParser.file(html_file)
14
- assert_instance_of(XML::HTMLParser, xp)
13
+ xp = LibXML::XML::HTMLParser.file(html_file)
14
+ assert_instance_of(LibXML::XML::HTMLParser, xp)
15
15
  doc = xp.parse
16
16
  refute_nil(doc)
17
17
  end
18
18
 
19
19
  def test_noexistent_file
20
- error = assert_raises(XML::Error) do
21
- XML::HTMLParser.file('i_dont_exist.xml')
20
+ error = assert_raises(LibXML::XML::Error) do
21
+ LibXML::XML::HTMLParser.file('i_dont_exist.xml')
22
22
  end
23
23
 
24
24
  assert_equal('Warning: failed to load external entity "i_dont_exist.xml".', error.to_s)
@@ -26,7 +26,7 @@ class HTMLParserTest < Minitest::Test
26
26
 
27
27
  def test_nil_file
28
28
  error = assert_raises(TypeError) do
29
- XML::HTMLParser.file(nil)
29
+ LibXML::XML::HTMLParser.file(nil)
30
30
  end
31
31
 
32
32
  assert_match(/nil into String/, error.to_s)
@@ -34,11 +34,11 @@ class HTMLParserTest < Minitest::Test
34
34
 
35
35
  def test_io
36
36
  File.open(html_file) do |io|
37
- xp = XML::HTMLParser.io(io)
38
- assert_instance_of(XML::HTMLParser, xp)
37
+ xp = LibXML::XML::HTMLParser.io(io)
38
+ assert_instance_of(LibXML::XML::HTMLParser, xp)
39
39
 
40
40
  doc = xp.parse
41
- assert_instance_of(XML::Document, doc)
41
+ assert_instance_of(LibXML::XML::Document, doc)
42
42
  end
43
43
  end
44
44
 
@@ -46,7 +46,7 @@ class HTMLParserTest < Minitest::Test
46
46
  # Test that the reader keeps a reference
47
47
  # to the io object
48
48
  file = File.open(html_file)
49
- parser = XML::HTMLParser.io(file)
49
+ parser = LibXML::XML::HTMLParser.io(file)
50
50
  file = nil
51
51
  GC.start
52
52
  assert(parser.parse)
@@ -54,7 +54,7 @@ class HTMLParserTest < Minitest::Test
54
54
 
55
55
  def test_nil_io
56
56
  error = assert_raises(TypeError) do
57
- XML::HTMLParser.io(nil)
57
+ LibXML::XML::HTMLParser.io(nil)
58
58
  end
59
59
 
60
60
  assert_equal("Must pass in an IO object", error.to_s)
@@ -63,27 +63,27 @@ class HTMLParserTest < Minitest::Test
63
63
  def test_string_io
64
64
  data = File.read(html_file)
65
65
  io = StringIO.new(data)
66
- xp = XML::HTMLParser.io(io)
67
- assert_instance_of(XML::HTMLParser, xp)
66
+ xp = LibXML::XML::HTMLParser.io(io)
67
+ assert_instance_of(LibXML::XML::HTMLParser, xp)
68
68
 
69
69
  doc = xp.parse
70
- assert_instance_of(XML::Document, doc)
70
+ assert_instance_of(LibXML::XML::Document, doc)
71
71
  end
72
72
 
73
73
  def test_string
74
74
  str = '<html><body><p>hi</p></body></html>'
75
- xp = XML::HTMLParser.string(str)
75
+ xp = LibXML::XML::HTMLParser.string(str)
76
76
 
77
- assert_instance_of(XML::HTMLParser, xp)
78
- assert_instance_of(XML::HTMLParser, xp)
77
+ assert_instance_of(LibXML::XML::HTMLParser, xp)
78
+ assert_instance_of(LibXML::XML::HTMLParser, xp)
79
79
 
80
80
  doc = xp.parse
81
- assert_instance_of(XML::Document, doc)
81
+ assert_instance_of(LibXML::XML::Document, doc)
82
82
  end
83
83
 
84
84
  def test_nil_string
85
85
  error = assert_raises(TypeError) do
86
- XML::HTMLParser.string(nil)
86
+ LibXML::XML::HTMLParser.string(nil)
87
87
  end
88
88
 
89
89
  assert_equal("wrong argument type nil (expected String)", error.to_s)
@@ -98,26 +98,26 @@ class HTMLParserTest < Minitest::Test
98
98
  <body>Hello<br>World</html>
99
99
  EOS
100
100
 
101
- parser = XML::HTMLParser.string(html, :options => XML::HTMLParser::Options::NOBLANKS)
101
+ parser = LibXML::XML::HTMLParser.string(html, :options => LibXML::XML::HTMLParser::Options::NOBLANKS)
102
102
  doc = parser.parse
103
- assert_instance_of XML::Document, doc
103
+ assert_instance_of LibXML::XML::Document, doc
104
104
 
105
105
  root = doc.root
106
- assert_instance_of XML::Node, root
106
+ assert_instance_of LibXML::XML::Node, root
107
107
  assert_equal 'html', root.name
108
108
 
109
109
  head = root.child
110
- assert_instance_of XML::Node, head
110
+ assert_instance_of LibXML::XML::Node, head
111
111
  assert_equal 'head', head.name
112
112
 
113
113
  meta = head.child
114
- assert_instance_of XML::Node, meta
114
+ assert_instance_of LibXML::XML::Node, meta
115
115
  assert_equal 'meta', meta.name
116
116
  assert_equal 'keywords', meta[:name]
117
117
  assert_equal 'nasty', meta[:content]
118
118
 
119
119
  body = head.next
120
- assert_instance_of XML::Node, body
120
+ assert_instance_of LibXML::XML::Node, body
121
121
  assert_equal 'body', body.name
122
122
 
123
123
  hello = body.child
@@ -125,21 +125,21 @@ class HTMLParserTest < Minitest::Test
125
125
  # cant figure our why or how, so this skips it if there
126
126
  hello = hello.child if hello.name == "p"
127
127
 
128
- assert_instance_of XML::Node, hello
128
+ assert_instance_of LibXML::XML::Node, hello
129
129
  assert_equal 'Hello', hello.content
130
130
 
131
131
  br = hello.next
132
- assert_instance_of XML::Node, br
132
+ assert_instance_of LibXML::XML::Node, br
133
133
  assert_equal 'br', br.name
134
134
 
135
135
  world = br.next
136
- assert_instance_of XML::Node, world
136
+ assert_instance_of LibXML::XML::Node, world
137
137
  assert_equal 'World', world.content
138
138
  end
139
139
 
140
140
  def test_no_implied
141
141
  html = "hello world"
142
- parser = XML::HTMLParser.string(html, :options => XML::HTMLParser::Options::NOIMPLIED)
142
+ parser = LibXML::XML::HTMLParser.string(html, :options => LibXML::XML::HTMLParser::Options::NOIMPLIED)
143
143
  doc = parser.parse
144
144
  assert_equal("<p>#{html}</p>", doc.root.to_s)
145
145
  end
@@ -156,7 +156,7 @@ class HTMLParserTest < Minitest::Test
156
156
  def test_open_many_files
157
157
  file = File.expand_path(File.join(File.dirname(__FILE__), 'model/ruby-lang.html'))
158
158
  1000.times do
159
- XML::HTMLParser.file(file).parse
159
+ LibXML::XML::HTMLParser.file(file).parse
160
160
  end
161
161
  end
162
162
  end