libxml-ruby 3.0.0-x64-mingw32 → 3.2.2-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 (87) hide show
  1. checksums.yaml +5 -5
  2. data/HISTORY +37 -0
  3. data/MANIFEST +34 -34
  4. data/README.rdoc +65 -36
  5. data/Rakefile +21 -3
  6. data/ext/libxml/extconf.rb +30 -26
  7. data/ext/libxml/ruby_libxml.h +0 -8
  8. data/ext/libxml/ruby_xml.c +40 -0
  9. data/ext/libxml/ruby_xml_document.c +1 -5
  10. data/ext/libxml/ruby_xml_dtd.c +6 -8
  11. data/ext/libxml/ruby_xml_encoding.c +1 -13
  12. data/ext/libxml/ruby_xml_encoding.h +0 -3
  13. data/ext/libxml/ruby_xml_error.c +1 -1
  14. data/ext/libxml/ruby_xml_error.h +1 -1
  15. data/ext/libxml/ruby_xml_io.c +14 -18
  16. data/ext/libxml/ruby_xml_io.h +1 -1
  17. data/ext/libxml/ruby_xml_node.c +16 -17
  18. data/ext/libxml/ruby_xml_parser_context.c +1 -1
  19. data/ext/libxml/ruby_xml_reader.c +7 -2
  20. data/ext/libxml/ruby_xml_schema.c +44 -66
  21. data/ext/libxml/ruby_xml_schema_element.c +15 -14
  22. data/ext/libxml/ruby_xml_schema_type.c +66 -93
  23. data/ext/libxml/ruby_xml_version.h +4 -4
  24. data/ext/libxml/ruby_xml_writer.c +189 -192
  25. data/lib/3.0/libxml_ruby.so +0 -0
  26. data/lib/libxml/schema/element.rb +0 -8
  27. data/lib/libxml/schema/type.rb +0 -8
  28. data/lib/libxml/schema.rb +0 -19
  29. data/lib/libxml-ruby.rb +30 -0
  30. data/lib/libxml.rb +3 -28
  31. data/libxml-ruby.gemspec +5 -4
  32. data/setup.rb +0 -1
  33. data/test/model/cwm_1_0.xml +11336 -0
  34. data/test/{tc_attr.rb → test_attr.rb} +18 -18
  35. data/test/{tc_attr_decl.rb → test_attr_decl.rb} +8 -8
  36. data/test/{tc_attributes.rb → test_attributes.rb} +10 -10
  37. data/test/{tc_canonicalize.rb → test_canonicalize.rb} +35 -39
  38. data/test/test_deprecated_require.rb +12 -0
  39. data/test/{tc_document.rb → test_document.rb} +31 -24
  40. data/test/test_document_write.rb +146 -0
  41. data/test/{tc_dtd.rb → test_dtd.rb} +26 -25
  42. data/test/{tc_encoding.rb → test_encoding.rb} +20 -17
  43. data/test/{tc_encoding_sax.rb → test_encoding_sax.rb} +3 -3
  44. data/test/test_error.rb +178 -0
  45. data/test/test_helper.rb +4 -11
  46. data/test/{tc_html_parser.rb → test_html_parser.rb} +31 -30
  47. data/test/test_html_parser_context.rb +23 -0
  48. data/test/test_namespace.rb +60 -0
  49. data/test/{tc_namespaces.rb → test_namespaces.rb} +29 -38
  50. data/test/{tc_node.rb → test_node.rb} +37 -31
  51. data/test/{tc_node_cdata.rb → test_node_cdata.rb} +10 -10
  52. data/test/{tc_node_comment.rb → test_node_comment.rb} +6 -6
  53. data/test/{tc_node_copy.rb → test_node_copy.rb} +3 -4
  54. data/test/{tc_node_edit.rb → test_node_edit.rb} +20 -21
  55. data/test/{tc_node_pi.rb → test_node_pi.rb} +8 -10
  56. data/test/{tc_node_text.rb → test_node_text.rb} +8 -9
  57. data/test/{tc_node_write.rb → test_node_write.rb} +16 -26
  58. data/test/test_node_xlink.rb +28 -0
  59. data/test/{tc_parser.rb → test_parser.rb} +72 -75
  60. data/test/{tc_parser_context.rb → test_parser_context.rb} +38 -44
  61. data/test/{tc_properties.rb → test_properties.rb} +5 -5
  62. data/test/test_reader.rb +364 -0
  63. data/test/{tc_relaxng.rb → test_relaxng.rb} +11 -11
  64. data/test/{tc_sax_parser.rb → test_sax_parser.rb} +38 -31
  65. data/test/{tc_schema.rb → test_schema.rb} +40 -33
  66. data/test/test_suite.rb +39 -40
  67. data/test/{tc_traversal.rb → test_traversal.rb} +4 -4
  68. data/test/{tc_writer.rb → test_writer.rb} +95 -74
  69. data/test/{tc_xinclude.rb → test_xinclude.rb} +3 -3
  70. data/test/test_xml.rb +263 -0
  71. data/test/{tc_xpath.rb → test_xpath.rb} +25 -25
  72. data/test/{tc_xpath_context.rb → test_xpath_context.rb} +5 -5
  73. data/test/{tc_xpath_expression.rb → test_xpath_expression.rb} +7 -7
  74. data/test/{tc_xpointer.rb → test_xpointer.rb} +15 -15
  75. metadata +92 -106
  76. data/lib/2.4/libxml_ruby.so +0 -0
  77. data/lib/libs/libiconv-2.dll +0 -0
  78. data/lib/libs/libxml2-2.dll +0 -0
  79. data/lib/libs/zlib1.dll +0 -0
  80. data/test/tc_deprecated_require.rb +0 -12
  81. data/test/tc_document_write.rb +0 -195
  82. data/test/tc_error.rb +0 -178
  83. data/test/tc_html_parser_context.rb +0 -23
  84. data/test/tc_namespace.rb +0 -61
  85. data/test/tc_node_xlink.rb +0 -28
  86. data/test/tc_reader.rb +0 -358
  87. data/test/tc_xml.rb +0 -225
@@ -1,47 +1,47 @@
1
1
  # encoding: UTF-8
2
2
 
3
- require './test_helper'
3
+ require_relative './test_helper'
4
4
  require 'stringio'
5
5
 
6
6
  class TestParser < Minitest::Test
7
7
  def setup
8
- XML::Error.set_handler(&XML::Error::QUIET_HANDLER)
8
+ LibXML::XML::Error.set_handler(&LibXML::XML::Error::QUIET_HANDLER)
9
9
  end
10
10
 
11
11
  # ----- Sources -------
12
12
  def test_document
13
13
  file = File.expand_path(File.join(File.dirname(__FILE__), 'model/bands.utf-8.xml'))
14
- parser = XML::Parser.file(file)
14
+ parser = LibXML::XML::Parser.file(file)
15
15
  doc = parser.parse
16
16
 
17
- parser = XML::Parser.document(doc)
17
+ parser = LibXML::XML::Parser.document(doc)
18
18
 
19
19
  doc = parser.parse
20
20
 
21
- assert_instance_of(XML::Document, doc)
22
- assert_instance_of(XML::Parser::Context, parser.context)
21
+ assert_instance_of(LibXML::XML::Document, doc)
22
+ assert_instance_of(LibXML::XML::Parser::Context, parser.context)
23
23
  end
24
24
 
25
25
  def test_nil_document
26
26
  error = assert_raises(TypeError) do
27
- XML::Parser.document(nil)
27
+ LibXML::XML::Parser.document(nil)
28
28
  end
29
29
 
30
- assert_equal("Must pass an XML::Document object", error.to_s)
30
+ assert_equal("Must pass an LibXML::XML::Document object", error.to_s)
31
31
  end
32
32
 
33
33
  def test_file
34
34
  file = File.expand_path(File.join(File.dirname(__FILE__), 'model/rubynet.xml'))
35
35
 
36
- parser = XML::Parser.file(file)
36
+ parser = LibXML::XML::Parser.file(file)
37
37
  doc = parser.parse
38
- assert_instance_of(XML::Document, doc)
39
- assert_instance_of(XML::Parser::Context, parser.context)
38
+ assert_instance_of(LibXML::XML::Document, doc)
39
+ assert_instance_of(LibXML::XML::Parser::Context, parser.context)
40
40
  end
41
41
 
42
42
  def test_noexistent_file
43
- error = assert_raises(XML::Error) do
44
- XML::Parser.file('i_dont_exist.xml')
43
+ error = assert_raises(LibXML::XML::Error) do
44
+ LibXML::XML::Parser.file('i_dont_exist.xml')
45
45
  end
46
46
 
47
47
  assert_equal('Warning: failed to load external entity "i_dont_exist.xml".', error.to_s)
@@ -49,7 +49,7 @@ class TestParser < Minitest::Test
49
49
 
50
50
  def test_nil_file
51
51
  error = assert_raises(TypeError) do
52
- XML::Parser.file(nil)
52
+ LibXML::XML::Parser.file(nil)
53
53
  end
54
54
 
55
55
  assert_match(/nil into String/, error.to_s)
@@ -57,15 +57,15 @@ class TestParser < Minitest::Test
57
57
 
58
58
  def test_file_encoding
59
59
  file = File.expand_path(File.join(File.dirname(__FILE__), 'model/bands.utf-8.xml'))
60
- parser = XML::Parser.file(file, :encoding => XML::Encoding::ISO_8859_1)
60
+ parser = LibXML::XML::Parser.file(file, :encoding => LibXML::XML::Encoding::ISO_8859_1)
61
61
 
62
- error = assert_raises(XML::Error) do
63
- doc = parser.parse
62
+ error = assert_raises(LibXML::XML::Error) do
63
+ parser.parse
64
64
  end
65
65
 
66
66
  assert(error.to_s.match(/Fatal error: Extra content at the end of the document/))
67
67
 
68
- parser = XML::Parser.file(file, :encoding => XML::Encoding::UTF_8)
68
+ parser = LibXML::XML::Parser.file(file, :encoding => LibXML::XML::Encoding::UTF_8)
69
69
  doc = parser.parse
70
70
  refute_nil(doc)
71
71
  end
@@ -73,23 +73,23 @@ class TestParser < Minitest::Test
73
73
  def test_file_base_uri
74
74
  file = File.expand_path(File.join(File.dirname(__FILE__), 'model/bands.utf-8.xml'))
75
75
 
76
- parser = XML::Parser.file(file)
76
+ parser = LibXML::XML::Parser.file(file)
77
77
  doc = parser.parse
78
78
  assert(doc.child.base_uri.match(/test\/model\/bands.utf-8.xml/))
79
79
 
80
- parser = XML::Parser.file(file, :base_uri => "http://libxml.org")
80
+ parser = LibXML::XML::Parser.file(file, :base_uri => "http://libxml.org")
81
81
  doc = parser.parse
82
82
  assert(doc.child.base_uri.match(/test\/model\/bands.utf-8.xml/))
83
83
  end
84
84
 
85
85
  def test_io
86
86
  File.open(File.join(File.dirname(__FILE__), 'model/rubynet.xml')) do |io|
87
- parser = XML::Parser.io(io)
88
- assert_instance_of(XML::Parser, parser)
87
+ parser = LibXML::XML::Parser.io(io)
88
+ assert_instance_of(LibXML::XML::Parser, parser)
89
89
 
90
90
  doc = parser.parse
91
- assert_instance_of(XML::Document, doc)
92
- assert_instance_of(XML::Parser::Context, parser.context)
91
+ assert_instance_of(LibXML::XML::Document, doc)
92
+ assert_instance_of(LibXML::XML::Parser::Context, parser.context)
93
93
  end
94
94
  end
95
95
 
@@ -97,7 +97,7 @@ class TestParser < Minitest::Test
97
97
  # Test that the reader keeps a reference
98
98
  # to the io object
99
99
  file = File.open(File.join(File.dirname(__FILE__), 'model/rubynet.xml'))
100
- parser = XML::Parser.io(file)
100
+ parser = LibXML::XML::Parser.io(file)
101
101
  file = nil
102
102
  GC.start
103
103
  assert(parser.parse)
@@ -105,7 +105,7 @@ class TestParser < Minitest::Test
105
105
 
106
106
  def test_nil_io
107
107
  error = assert_raises(TypeError) do
108
- XML::Parser.io(nil)
108
+ LibXML::XML::Parser.io(nil)
109
109
  end
110
110
 
111
111
  assert_equal("Must pass in an IO object", error.to_s)
@@ -114,22 +114,22 @@ class TestParser < Minitest::Test
114
114
  def test_string_io
115
115
  data = File.read(File.join(File.dirname(__FILE__), 'model/rubynet.xml'))
116
116
  string_io = StringIO.new(data)
117
- parser = XML::Parser.io(string_io)
117
+ parser = LibXML::XML::Parser.io(string_io)
118
118
 
119
119
  doc = parser.parse
120
- assert_instance_of(XML::Document, doc)
121
- assert_instance_of(XML::Parser::Context, parser.context)
120
+ assert_instance_of(LibXML::XML::Document, doc)
121
+ assert_instance_of(LibXML::XML::Parser::Context, parser.context)
122
122
  end
123
123
 
124
124
  def test_string_io_thread
125
125
  thread = Thread.new do
126
126
  data = File.read(File.join(File.dirname(__FILE__), 'model/rubynet.xml'))
127
127
  string_io = StringIO.new(data)
128
- parser = XML::Parser.io(string_io)
128
+ parser = LibXML::XML::Parser.io(string_io)
129
129
 
130
130
  doc = parser.parse
131
- assert_instance_of(XML::Document, doc)
132
- assert_instance_of(XML::Parser::Context, parser.context)
131
+ assert_instance_of(LibXML::XML::Document, doc)
132
+ assert_instance_of(LibXML::XML::Parser::Context, parser.context)
133
133
  end
134
134
 
135
135
  thread.join
@@ -140,17 +140,17 @@ class TestParser < Minitest::Test
140
140
  def test_string
141
141
  str = '<ruby_array uga="booga" foo="bar"><fixnum>one</fixnum><fixnum>two</fixnum></ruby_array>'
142
142
 
143
- parser = XML::Parser.string(str)
144
- assert_instance_of(XML::Parser, parser)
143
+ parser = LibXML::XML::Parser.string(str)
144
+ assert_instance_of(LibXML::XML::Parser, parser)
145
145
 
146
146
  doc = parser.parse
147
- assert_instance_of(XML::Document, doc)
148
- assert_instance_of(XML::Parser::Context, parser.context)
147
+ assert_instance_of(LibXML::XML::Document, doc)
148
+ assert_instance_of(LibXML::XML::Parser::Context, parser.context)
149
149
  end
150
150
 
151
151
  def test_nil_string
152
152
  error = assert_raises(TypeError) do
153
- XML::Parser.string(nil)
153
+ LibXML::XML::Parser.string(nil)
154
154
  end
155
155
 
156
156
  assert_equal("wrong argument type nil (expected String)", error.to_s)
@@ -165,30 +165,30 @@ class TestParser < Minitest::Test
165
165
  </test>
166
166
  EOS
167
167
 
168
- XML::default_substitute_entities = false
168
+ LibXML::XML::default_substitute_entities = false
169
169
 
170
170
  # Parse normally
171
- parser = XML::Parser.string(xml)
171
+ parser = LibXML::XML::Parser.string(xml)
172
172
  doc = parser.parse
173
173
  assert_nil(doc.child.base_uri)
174
174
 
175
175
  # Cdata section should be cdata nodes
176
176
  node = doc.find_first('/test/cdata').child
177
- assert_equal(XML::Node::CDATA_SECTION_NODE, node.node_type)
177
+ assert_equal(LibXML::XML::Node::CDATA_SECTION_NODE, node.node_type)
178
178
 
179
179
  # Entities should not be subtituted
180
180
  node = doc.find_first('/test/entity')
181
181
  assert_equal('&foo;', node.child.to_s)
182
182
 
183
183
  # Parse with options
184
- parser = XML::Parser.string(xml, :base_uri => 'http://libxml.rubyforge.org',
185
- :options => XML::Parser::Options::NOCDATA | XML::Parser::Options::NOENT)
184
+ parser = LibXML::XML::Parser.string(xml, :base_uri => 'http://libxml.rubyforge.org',
185
+ :options => LibXML::XML::Parser::Options::NOCDATA | LibXML::XML::Parser::Options::NOENT)
186
186
  doc = parser.parse
187
187
  assert_equal(doc.child.base_uri, 'http://libxml.rubyforge.org')
188
188
 
189
189
  # Cdata section should be text nodes
190
190
  node = doc.find_first('/test/cdata').child
191
- assert_equal(XML::Node::TEXT_NODE, node.node_type)
191
+ assert_equal(LibXML::XML::Node::TEXT_NODE, node.node_type)
192
192
 
193
193
  # Entities should be subtituted
194
194
  node = doc.find_first('/test/entity')
@@ -207,25 +207,21 @@ class TestParser < Minitest::Test
207
207
  EOS
208
208
 
209
209
  # Parse as UTF_8
210
- parser = XML::Parser.string(xml, :encoding => XML::Encoding::UTF_8)
210
+ parser = LibXML::XML::Parser.string(xml, :encoding => LibXML::XML::Encoding::UTF_8)
211
211
 
212
- error = assert_raises(XML::Error) do
213
- doc = parser.parse
212
+ error = assert_raises(LibXML::XML::Error) do
213
+ parser.parse
214
214
  end
215
215
 
216
216
  assert_equal("Fatal error: Input is not proper UTF-8, indicate encoding !\nBytes: 0xF6 0x74 0x6C 0x65 at :2.",
217
217
  error.to_s)
218
218
 
219
219
  # Parse as ISO_8859_1:
220
- parser = XML::Parser.string(xml, :encoding => XML::Encoding::ISO_8859_1)
220
+ parser = LibXML::XML::Parser.string(xml, :encoding => LibXML::XML::Encoding::ISO_8859_1)
221
221
  doc = parser.parse
222
222
  node = doc.find_first('//metal')
223
- if defined?(Encoding)
224
- assert_equal(Encoding::UTF_8, node.content.encoding)
225
- assert_equal("m\303\266tley_cr\303\274e", node.content)
226
- else
227
- assert_equal("m\303\266tley_cr\303\274e", node.content)
228
- end
223
+ assert_equal(Encoding::UTF_8, node.content.encoding)
224
+ assert_equal("m\303\266tley_cr\303\274e", node.content)
229
225
  end
230
226
 
231
227
  def test_fd_gc
@@ -235,9 +231,9 @@ class TestParser < Minitest::Test
235
231
  # re-open the same doc `limit descriptors` times.
236
232
  # If we make it to the end, then we've succeeded,
237
233
  # otherwise an exception will be thrown.
238
- XML::Error.set_handler {|error|}
234
+ LibXML::XML::Error.set_handler {|error|}
239
235
 
240
- max_fd = if RUBY_PLATFORM.match(/mswin32|mingw/i)
236
+ max_fd = if RUBY_PLATFORM.match(/mswin32|mswin64|mingw/i)
241
237
  500
242
238
  else
243
239
  Process.getrlimit(Process::RLIMIT_NOFILE)[0] + 1
@@ -245,51 +241,52 @@ class TestParser < Minitest::Test
245
241
 
246
242
  file = File.join(File.dirname(__FILE__), 'model/rubynet.xml')
247
243
  max_fd.times do
248
- XML::Parser.file(file).parse
244
+ LibXML::XML::Parser.file(file).parse
249
245
  end
250
- XML::Error.reset_handler {|error|}
246
+ LibXML::XML::Error.reset_handler {|error|}
251
247
  end
252
248
 
253
249
  def test_open_many_files
250
+ file = File.expand_path(File.join(File.dirname(__FILE__), 'model/atom.xml'))
254
251
  1000.times do
255
- doc = XML::Parser.file('model/atom.xml').parse
252
+ LibXML::XML::Parser.file(file).parse
256
253
  end
257
254
  end
258
255
 
259
256
  # ----- Errors ------
260
257
  def test_error
261
- error = assert_raises(XML::Error) do
262
- XML::Parser.string('<foo><bar/></foz>').parse
258
+ error = assert_raises(LibXML::XML::Error) do
259
+ LibXML::XML::Parser.string('<foo><bar/></foz>').parse
263
260
  end
264
261
 
265
262
  refute_nil(error)
266
- assert_kind_of(XML::Error, error)
263
+ assert_kind_of(LibXML::XML::Error, error)
267
264
  assert_equal("Fatal error: Opening and ending tag mismatch: foo line 1 and foz at :1.", error.message)
268
- assert_equal(XML::Error::PARSER, error.domain)
269
- assert_equal(XML::Error::TAG_NAME_MISMATCH, error.code)
270
- assert_equal(XML::Error::FATAL, error.level)
265
+ assert_equal(LibXML::XML::Error::PARSER, error.domain)
266
+ assert_equal(LibXML::XML::Error::TAG_NAME_MISMATCH, error.code)
267
+ assert_equal(LibXML::XML::Error::FATAL, error.level)
271
268
  assert_nil(error.file)
272
269
  assert_equal(1, error.line)
273
270
  assert_equal('foo', error.str1)
274
271
  assert_equal('foz', error.str2)
275
272
  assert_nil(error.str3)
276
273
  assert_equal(1, error.int1)
277
- assert_equal(20, error.int2)
274
+ assert([18, 20].include?(error.int2))
278
275
  assert_nil(error.node)
279
276
  end
280
277
 
281
278
  def test_bad_xml
282
- parser = XML::Parser.string('<ruby_array uga="booga" foo="bar"<fixnum>one</fixnum><fixnum>two</fixnum></ruby_array>')
283
- error = assert_raises(XML::Error) do
279
+ parser = LibXML::XML::Parser.string('<ruby_array uga="booga" foo="bar"<fixnum>one</fixnum><fixnum>two</fixnum></ruby_array>')
280
+ error = assert_raises(LibXML::XML::Error) do
284
281
  refute_nil(parser.parse)
285
282
  end
286
283
 
287
284
  refute_nil(error)
288
- assert_kind_of(XML::Error, error)
285
+ assert_kind_of(LibXML::XML::Error, error)
289
286
  assert_equal("Fatal error: Extra content at the end of the document at :1.", error.message)
290
- assert_equal(XML::Error::PARSER, error.domain)
291
- assert_equal(XML::Error::DOCUMENT_END, error.code)
292
- assert_equal(XML::Error::FATAL, error.level)
287
+ assert_equal(LibXML::XML::Error::PARSER, error.domain)
288
+ assert_equal(LibXML::XML::Error::DOCUMENT_END, error.code)
289
+ assert_equal(LibXML::XML::Error::FATAL, error.level)
293
290
  assert_nil(error.file)
294
291
  assert_equal(1, error.line)
295
292
  assert_nil(error.str1)
@@ -305,20 +302,20 @@ class TestParser < Minitest::Test
305
302
  background_errors = []
306
303
 
307
304
  begin
308
- XML::Error.set_handler do |error|
305
+ LibXML::XML::Error.set_handler do |error|
309
306
  errors << error
310
307
  end
311
- parser = XML::Parser.string("<moo>")
308
+ parser = LibXML::XML::Parser.string("<moo>")
312
309
 
313
310
  thread = Thread.new do
314
- XML::Error.set_handler do |error|
311
+ LibXML::XML::Error.set_handler do |error|
315
312
  background_errors << error
316
313
  end
317
314
  parser.parse rescue nil
318
315
  end
319
316
  thread.join
320
317
  ensure
321
- XML::Error.set_handler(&XML::Error::QUIET_HANDLER)
318
+ LibXML::XML::Error.set_handler(&LibXML::XML::Error::QUIET_HANDLER)
322
319
  end
323
320
 
324
321
  assert_equal(errors.size, 0)
@@ -1,6 +1,6 @@
1
1
  # encoding: UTF-8
2
2
 
3
- require './test_helper'
3
+ require_relative './test_helper'
4
4
 
5
5
 
6
6
  class TestParserContext < Minitest::Test
@@ -12,9 +12,9 @@ class TestParserContext < Minitest::Test
12
12
  </bands>
13
13
  EOS
14
14
 
15
- context = XML::Parser::Context.string(xml)
16
- assert_instance_of(XML::Parser::Context, context)
17
- assert_equal(XML::Encoding::NONE, context.encoding)
15
+ context = LibXML::XML::Parser::Context.string(xml)
16
+ assert_instance_of(LibXML::XML::Parser::Context, context)
17
+ assert_equal(LibXML::XML::Encoding::NONE, context.encoding)
18
18
  assert_nil(context.base_uri)
19
19
  end
20
20
 
@@ -26,11 +26,11 @@ class TestParserContext < Minitest::Test
26
26
  </bands>
27
27
  EOS
28
28
 
29
- context = XML::Parser::Context.string(xml)
30
- assert_equal(XML::Encoding::NONE, context.encoding)
29
+ context = LibXML::XML::Parser::Context.string(xml)
30
+ assert_equal(LibXML::XML::Encoding::NONE, context.encoding)
31
31
 
32
- context.encoding = XML::Encoding::ISO_8859_1
33
- assert_equal(XML::Encoding::ISO_8859_1, context.encoding)
32
+ context.encoding = LibXML::XML::Encoding::ISO_8859_1
33
+ assert_equal(LibXML::XML::Encoding::ISO_8859_1, context.encoding)
34
34
  end
35
35
 
36
36
  def test_invalid_encoding
@@ -41,7 +41,7 @@ class TestParserContext < Minitest::Test
41
41
  </bands>
42
42
  EOS
43
43
 
44
- context = XML::Parser::Context.string(xml)
44
+ context = LibXML::XML::Parser::Context.string(xml)
45
45
 
46
46
  error = assert_raises(ArgumentError) do
47
47
  context.encoding = -999
@@ -57,7 +57,7 @@ class TestParserContext < Minitest::Test
57
57
  </bands>
58
58
  EOS
59
59
 
60
- context = XML::Parser::Context.string(xml)
60
+ context = LibXML::XML::Parser::Context.string(xml)
61
61
  assert_nil(context.base_uri)
62
62
 
63
63
  context.base_uri = 'http://libxml.rubyforge.org'
@@ -66,25 +66,25 @@ class TestParserContext < Minitest::Test
66
66
 
67
67
  def test_string_empty
68
68
  error = assert_raises(TypeError) do
69
- XML::Parser::Context.string(nil)
69
+ LibXML::XML::Parser::Context.string(nil)
70
70
  end
71
71
  assert_equal("wrong argument type nil (expected String)", error.to_s)
72
72
 
73
73
  error = assert_raises(ArgumentError) do
74
- XML::Parser::Context.string('')
74
+ LibXML::XML::Parser::Context.string('')
75
75
  end
76
76
  assert_equal("Must specify a string with one or more characters", error.to_s)
77
77
  end
78
78
 
79
79
  def test_well_formed
80
- parser = XML::Parser.string("<abc/>")
80
+ parser = LibXML::XML::Parser.string("<abc/>")
81
81
  parser.parse
82
82
  assert(parser.context.well_formed?)
83
83
  end
84
84
 
85
85
  def test_not_well_formed
86
- parser = XML::Parser.string("<abc>")
87
- assert_raises(XML::Error) do
86
+ parser = LibXML::XML::Parser.string("<abc>")
87
+ assert_raises(LibXML::XML::Error) do
88
88
  parser.parse
89
89
  end
90
90
  assert(!parser.context.well_formed?)
@@ -92,34 +92,34 @@ class TestParserContext < Minitest::Test
92
92
 
93
93
  def test_version_info
94
94
  file = File.expand_path(File.join(File.dirname(__FILE__), 'model/bands.utf-8.xml'))
95
- parser = XML::Parser.file(file)
95
+ parser = LibXML::XML::Parser.file(file)
96
96
  assert_nil(parser.context.version)
97
97
  parser.parse
98
98
  assert_equal("1.0", parser.context.version)
99
99
  end
100
100
 
101
101
  def test_depth
102
- context = XML::Parser::Context.new
103
- assert_instance_of(Fixnum, context.depth)
102
+ context = LibXML::XML::Parser::Context.new
103
+ assert_instance_of(Integer, context.depth)
104
104
  end
105
105
 
106
106
  def test_disable_sax
107
- context = XML::Parser::Context.new
107
+ context = LibXML::XML::Parser::Context.new
108
108
  assert(!context.disable_sax?)
109
109
  end
110
110
 
111
111
  def test_docbook
112
- context = XML::Parser::Context.new
112
+ context = LibXML::XML::Parser::Context.new
113
113
  assert(!context.docbook?)
114
114
  end
115
115
 
116
116
  def test_html
117
- context = XML::Parser::Context.new
117
+ context = LibXML::XML::Parser::Context.new
118
118
  assert(!context.html?)
119
119
  end
120
120
 
121
121
  def test_keep_blanks
122
- context = XML::Parser::Context.new
122
+ context = LibXML::XML::Parser::Context.new
123
123
  if context.keep_blanks?
124
124
  assert_instance_of(TrueClass, context.keep_blanks?)
125
125
  else
@@ -127,18 +127,12 @@ class TestParserContext < Minitest::Test
127
127
  end
128
128
  end
129
129
 
130
- if ENV['NOTWORKING']
131
- def test_num_chars
132
- assert_equal(17, context.num_chars)
133
- end
134
- end
135
-
136
130
  def test_replace_entities
137
- context = XML::Parser::Context.new
131
+ context = LibXML::XML::Parser::Context.new
138
132
  assert(!context.replace_entities?)
139
133
 
140
- # context.options = 1
141
- # assert(context.replace_entities?)
134
+ context.options = LibXML::XML::Parser::Options::NOENT
135
+ assert(context.replace_entities?)
142
136
 
143
137
  context.options = 0
144
138
  assert(!context.replace_entities?)
@@ -148,52 +142,52 @@ class TestParserContext < Minitest::Test
148
142
  end
149
143
 
150
144
  def test_space_depth
151
- context = XML::Parser::Context.new
145
+ context = LibXML::XML::Parser::Context.new
152
146
  assert_equal(1, context.space_depth)
153
147
  end
154
148
 
155
149
  def test_subset_external
156
- context = XML::Parser::Context.new
150
+ context = LibXML::XML::Parser::Context.new
157
151
  assert(!context.subset_external?)
158
152
  end
159
153
 
160
154
  def test_data_directory_get
161
- context = XML::Parser::Context.new
155
+ context = LibXML::XML::Parser::Context.new
162
156
  assert_nil(context.data_directory)
163
157
  end
164
158
 
165
159
  def test_parse_error
166
- xp = XML::Parser.string('<foo><bar/></foz>')
160
+ xp = LibXML::XML::Parser.string('<foo><bar/></foz>')
167
161
 
168
- assert_raises(XML::Error) do
162
+ assert_raises(LibXML::XML::Error) do
169
163
  xp.parse
170
164
  end
171
165
 
172
166
  # Now check context
173
167
  context = xp.context
174
- assert_equal(nil, context.data_directory)
168
+ assert_nil(context.data_directory)
175
169
  assert_equal(0, context.depth)
176
170
  assert_equal(true, context.disable_sax?)
177
171
  assert_equal(false, context.docbook?)
178
- assert_equal(XML::Encoding::NONE, context.encoding)
172
+ assert_equal(LibXML::XML::Encoding::NONE, context.encoding)
179
173
  assert_equal(76, context.errno)
180
174
  assert_equal(false, context.html?)
181
175
  assert_equal(5, context.io_max_num_streams)
182
176
  assert_equal(1, context.io_num_streams)
183
177
  assert_equal(true, context.keep_blanks?)
184
178
  assert_equal(1, context.io_num_streams)
185
- assert_equal(nil, context.name_node)
179
+ assert_nil(context.name_node)
186
180
  assert_equal(0, context.name_depth)
187
181
  assert_equal(10, context.name_depth_max)
188
- assert_equal(17, context.num_chars)
182
+ assert([0, 17].include?(context.num_chars))
189
183
  assert_equal(false, context.replace_entities?)
190
184
  assert_equal(1, context.space_depth)
191
185
  assert_equal(10, context.space_depth_max)
192
186
  assert_equal(false, context.subset_external?)
193
- assert_equal(nil, context.subset_external_system_id)
194
- assert_equal(nil, context.subset_external_uri)
187
+ assert_nil(context.subset_external_system_id)
188
+ assert_nil(context.subset_external_uri)
195
189
  assert_equal(false, context.subset_internal?)
196
- assert_equal(nil, context.subset_internal_name)
190
+ assert_nil(context.subset_internal_name)
197
191
  assert_equal(false, context.stats?)
198
192
  assert_equal(true, context.standalone?)
199
193
  assert_equal(false, context.valid)
@@ -201,4 +195,4 @@ class TestParserContext < Minitest::Test
201
195
  assert_equal('1.0', context.version)
202
196
  assert_equal(false, context.well_formed?)
203
197
  end
204
- end
198
+ end
@@ -1,6 +1,6 @@
1
1
  # encoding: UTF-8
2
2
 
3
- require './test_helper'
3
+ require_relative './test_helper'
4
4
 
5
5
 
6
6
  # attributes is deprecated - use attributes instead.
@@ -8,7 +8,7 @@ require './test_helper'
8
8
 
9
9
  class Testattributes < Minitest::Test
10
10
  def setup()
11
- xp = XML::Parser.string('<ruby_array uga="booga" foo="bar"><fixnum>one</fixnum><fixnum>two</fixnum></ruby_array>')
11
+ xp = LibXML::XML::Parser.string('<ruby_array uga="booga" foo="bar"><fixnum>one</fixnum><fixnum>two</fixnum></ruby_array>')
12
12
  @doc = xp.parse
13
13
  end
14
14
 
@@ -19,20 +19,20 @@ class Testattributes < Minitest::Test
19
19
  def test_traversal
20
20
  attributes = @doc.root.attributes
21
21
 
22
- assert_instance_of(XML::Attributes, attributes)
22
+ assert_instance_of(LibXML::XML::Attributes, attributes)
23
23
  attribute = attributes.first
24
24
  assert_equal('uga', attribute.name)
25
25
  assert_equal('booga', attribute.value)
26
26
 
27
27
  attribute = attribute.next
28
- assert_instance_of(XML::Attr, attribute)
28
+ assert_instance_of(LibXML::XML::Attr, attribute)
29
29
  assert_equal('foo', attribute.name)
30
30
  assert_equal('bar', attribute.value)
31
31
  end
32
32
 
33
33
  def test_no_attributes
34
34
  attributes = @doc.root.child.attributes
35
- assert_instance_of(XML::Attributes, attributes)
35
+ assert_instance_of(LibXML::XML::Attributes, attributes)
36
36
  assert_equal(0, attributes.length)
37
37
  end
38
38
  end