libxml-ruby 0.5.2.0 → 0.5.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (131) hide show
  1. data/CHANGES +122 -0
  2. data/LICENSE +2 -1
  3. data/MANIFEST +138 -0
  4. data/NOTES +9 -0
  5. data/README +1 -1
  6. data/Rakefile +27 -205
  7. data/TODO +0 -2
  8. data/VERSION +1 -0
  9. data/ext/{xml → libxml}/cbg.c +0 -0
  10. data/ext/libxml/extconf.rb +309 -0
  11. data/ext/{xml → libxml}/libxml.c +1 -1
  12. data/ext/{xml → libxml}/libxml.h +7 -4
  13. data/ext/{xml → libxml}/ruby_xml_attr.c +1 -1
  14. data/ext/{xml → libxml}/ruby_xml_attr.h +1 -1
  15. data/ext/{xml → libxml}/ruby_xml_document.c +16 -8
  16. data/ext/{xml → libxml}/ruby_xml_document.h +1 -1
  17. data/ext/{xml → libxml}/ruby_xml_dtd.c +0 -0
  18. data/ext/{xml → libxml}/ruby_xml_dtd.h +0 -0
  19. data/ext/{xml → libxml}/ruby_xml_html_parser.c +1 -1
  20. data/ext/{xml → libxml}/ruby_xml_html_parser.h +1 -1
  21. data/ext/{xml → libxml}/ruby_xml_input_cbg.c +0 -0
  22. data/ext/{xml → libxml}/ruby_xml_input_cbg.h +0 -0
  23. data/ext/{xml → libxml}/ruby_xml_node.c +47 -6
  24. data/ext/{xml → libxml}/ruby_xml_node.h +1 -1
  25. data/ext/{xml → libxml}/ruby_xml_node_set.c +1 -1
  26. data/ext/{xml → libxml}/ruby_xml_node_set.h +1 -1
  27. data/ext/{xml → libxml}/ruby_xml_ns.c +1 -1
  28. data/ext/{xml → libxml}/ruby_xml_ns.h +1 -1
  29. data/ext/{xml → libxml}/ruby_xml_parser.c +6 -4
  30. data/ext/{xml → libxml}/ruby_xml_parser.h +1 -1
  31. data/ext/{xml → libxml}/ruby_xml_parser_context.c +1 -1
  32. data/ext/{xml → libxml}/ruby_xml_parser_context.h +1 -1
  33. data/ext/{xml → libxml}/ruby_xml_reader.c +3 -0
  34. data/ext/{xml → libxml}/ruby_xml_reader.h +0 -0
  35. data/ext/{xml → libxml}/ruby_xml_sax_parser.c +1 -1
  36. data/ext/{xml → libxml}/ruby_xml_sax_parser.h +1 -1
  37. data/ext/{xml → libxml}/ruby_xml_schema.c +0 -0
  38. data/ext/{xml → libxml}/ruby_xml_schema.h +0 -0
  39. data/ext/{xml → libxml}/ruby_xml_state.c +0 -0
  40. data/ext/{xml → libxml}/ruby_xml_state.h +0 -0
  41. data/ext/{xml → libxml}/ruby_xml_tree.c +1 -1
  42. data/ext/{xml → libxml}/ruby_xml_tree.h +1 -1
  43. data/ext/{xml → libxml}/ruby_xml_xinclude.c +1 -1
  44. data/ext/{xml → libxml}/ruby_xml_xinclude.h +1 -1
  45. data/ext/{xml → libxml}/ruby_xml_xpath.c +7 -4
  46. data/ext/{xml → libxml}/ruby_xml_xpath.h +1 -1
  47. data/ext/{xml → libxml}/ruby_xml_xpath_context.c +1 -1
  48. data/ext/{xml → libxml}/ruby_xml_xpath_context.h +1 -1
  49. data/ext/{xml → libxml}/ruby_xml_xpath_object.c +65 -32
  50. data/ext/{xml → libxml}/ruby_xml_xpath_object.h +0 -0
  51. data/ext/{xml → libxml}/ruby_xml_xpointer.c +1 -1
  52. data/ext/{xml → libxml}/ruby_xml_xpointer.h +1 -1
  53. data/ext/{xml → libxml}/ruby_xml_xpointer_context.c +1 -1
  54. data/ext/{xml → libxml}/ruby_xml_xpointer_context.h +1 -1
  55. data/ext/{xml → libxml}/sax_parser_callbacks.inc +1 -1
  56. data/ext/libxml/version.h +9 -0
  57. data/{ext/xml → lib}/libxml.rb +7 -2
  58. data/lib/xml/libxml.rb +5 -0
  59. data/{ChangeLog → log/Changelog-0.txt} +0 -0
  60. data/log/Changelog.txt +435 -0
  61. data/meta/project.yaml +27 -0
  62. data/meta/unixname +1 -0
  63. data/setup.rb +1469 -0
  64. data/site/css/normal.css +182 -0
  65. data/site/img/raze-tiny.png +0 -0
  66. data/site/img/red-cube.jpg +0 -0
  67. data/site/img/xml-ruby.png +0 -0
  68. data/site/index.xml +43 -0
  69. data/site/install.xml +77 -0
  70. data/site/layout.rhtml +38 -0
  71. data/site/layout.xsl +67 -0
  72. data/site/license.xml +32 -0
  73. data/site/log/changelog.xml +1324 -0
  74. data/site/log/changelog.xsl +42 -0
  75. data/{tests → test}/dtd-test.rb +2 -2
  76. data/test/etc_doc_to_s.rb +21 -0
  77. data/test/ets_copy_bug.rb +21 -0
  78. data/test/ets_copy_bug2.rb +32 -0
  79. data/test/ets_doc_file.rb +14 -0
  80. data/test/ets_doc_to_s.rb +21 -0
  81. data/test/ets_gpx.rb +26 -0
  82. data/test/ets_node_gc.rb +21 -0
  83. data/test/ets_test.xml +2 -0
  84. data/test/ets_tsr.rb +9 -0
  85. data/{tests → test}/merge_bug.rb +4 -5
  86. data/{tests → test}/model/default_validation_bug.rb +0 -0
  87. data/{tests → test}/model/merge_bug_data.xml +0 -0
  88. data/{tests → test}/model/rubynet.xml +0 -0
  89. data/{tests → test}/model/rubynet_project +1 -1
  90. data/{tests → test}/model/saxtest.xml +0 -0
  91. data/{tests → test}/model/simple.xml +0 -0
  92. data/{tests → test}/model/xinclude.xml +0 -0
  93. data/{tests → test}/schema-test.rb +2 -2
  94. data/{tests → test}/tc_xml_document.rb +2 -2
  95. data/{tests → test}/tc_xml_document_write.rb +1 -2
  96. data/{tests → test}/tc_xml_document_write2.rb +1 -2
  97. data/{tests → test}/tc_xml_document_write3.rb +1 -2
  98. data/{tests → test}/tc_xml_html_parser.rb +7 -8
  99. data/{tests → test}/tc_xml_node.rb +1 -2
  100. data/{tests → test}/tc_xml_node2.rb +1 -2
  101. data/{tests → test}/tc_xml_node3.rb +2 -3
  102. data/{tests → test}/tc_xml_node4.rb +19 -20
  103. data/{tests → test}/tc_xml_node5.rb +8 -9
  104. data/{tests → test}/tc_xml_node6.rb +1 -2
  105. data/{tests → test}/tc_xml_node7.rb +5 -6
  106. data/{tests → test}/tc_xml_node8.rb +5 -5
  107. data/{tests → test}/tc_xml_node9.rb +5 -5
  108. data/test/tc_xml_node_copy.rb +40 -0
  109. data/{tests → test}/tc_xml_node_set.rb +2 -3
  110. data/{tests → test}/tc_xml_node_set2.rb +4 -5
  111. data/test/tc_xml_node_text.rb +17 -0
  112. data/{tests → test}/tc_xml_node_xlink.rb +2 -2
  113. data/{tests → test}/tc_xml_parser.rb +5 -6
  114. data/{tests → test}/tc_xml_parser2.rb +2 -2
  115. data/{tests → test}/tc_xml_parser3.rb +2 -2
  116. data/{tests → test}/tc_xml_parser4.rb +2 -2
  117. data/{tests → test}/tc_xml_parser5.rb +2 -2
  118. data/{tests → test}/tc_xml_parser6.rb +3 -3
  119. data/{tests → test}/tc_xml_parser7.rb +3 -3
  120. data/{tests → test}/tc_xml_parser8.rb +13 -13
  121. data/{tests → test}/tc_xml_parser_context.rb +1 -2
  122. data/{tests → test}/tc_xml_reader.rb +22 -14
  123. data/{tests → test}/tc_xml_sax_parser.rb +21 -22
  124. data/{tests → test}/tc_xml_xinclude.rb +4 -4
  125. data/{tests → test}/tc_xml_xpath.rb +17 -3
  126. data/{tests → test}/tc_xml_xpointer.rb +4 -5
  127. metadata +231 -158
  128. data/CHANGELOG_to200701 +0 -82
  129. data/ext/xml/extconf.rb +0 -98
  130. data/tests/libxml_test.rb +0 -3
  131. data/tests/runner.rb +0 -11
@@ -0,0 +1,42 @@
1
+ <?xml version="1.0" encoding="ISO-8859-1"?>
2
+ <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
3
+
4
+ <xsl:output cdata-section-elements="script"/>
5
+
6
+ <xsl:template match="/">
7
+
8
+ <html>
9
+ <head>
10
+ <title>Facets Changelog</title>
11
+ <link REL='SHORTCUT ICON' HREF="img/xml-ruby.png" />
12
+ <style>
13
+ td { font-family: monospace; font-size: 8pt; padding: 0px 10px; }
14
+ </style>
15
+ </head>
16
+ <body>
17
+ <div class="container">
18
+ <h1>LibXML ChangeLog</h1>
19
+ <table style="width: 100%;">
20
+ <xsl:apply-templates />
21
+ </table>
22
+ <br/><br/>
23
+ <div class='copyright'>
24
+ Copyright &#x00A9; 2001-2006 LibXML-Ruby Development Team<br/>
25
+ Changelog is pure XML/XSLT.<br/>
26
+ </div>
27
+ </div>
28
+ </body>
29
+ </html>
30
+
31
+ </xsl:template>
32
+
33
+ <xsl:template match="logentry">
34
+ <tr>
35
+ <td><b><pre><xsl:value-of select="msg"/></pre></b></td>
36
+ <td><xsl:value-of select="author"/></td>
37
+ <td><xsl:value-of select="date"/></td>
38
+ </tr>
39
+ </xsl:template>
40
+
41
+ </xsl:stylesheet>
42
+
@@ -1,4 +1,4 @@
1
- require "libxml_test"
1
+ require "libxml"
2
2
 
3
3
  xp = XML::Parser.new
4
4
  xp.string = '<?xml version="1.0" encoding="utf-8"?>
@@ -16,7 +16,7 @@ dtd = XML::Dtd.new('
16
16
  <!ELEMENT descr (#PCDATA)>
17
17
  ')
18
18
 
19
- if doc.validate(dtd) { |message, error| puts "#{error ? 'error' : 'warning'} : #{message}" }
19
+ if doc.validate(dtd) { |message, error| puts "#{error ? 'error' : 'warning'} : #{message}" }
20
20
  puts "validation passed"
21
21
  else
22
22
  puts "validation failed"
@@ -0,0 +1,21 @@
1
+ require 'libxml'
2
+
3
+ 1000.times do |count|
4
+
5
+ xml_doc = XML::Document.new()
6
+ xml_doc.encoding = "UTF-8"
7
+ xml_doc.root = XML::Node.new("Request")
8
+
9
+ 1000.times do |index|
10
+
11
+ xml_doc.root << node = XML::Node.new("row")
12
+ node["user_id"] = index.to_s
13
+ node << "600445"
14
+
15
+ end
16
+
17
+ xml_str = xml_doc.to_s
18
+ print "\r#{count}"
19
+ $stdout.flush
20
+ end
21
+ puts "\n"
@@ -0,0 +1,21 @@
1
+ #!/usr/bin/ruby -w -I.
2
+
3
+ def test( doc2 )
4
+ doc = XML::Document.new('1.0')
5
+ doc.root = XML::Node.new("ccc")
6
+ doc.root['aaa'] = 'aaa'
7
+ doc.root.child_add(doc2.root) # BUG!
8
+ doc.root << doc2.root.copy(true)
9
+ return doc
10
+ end
11
+
12
+ def test2
13
+ doc2 = XML::Document.new('1.0')
14
+ doc2.root = XML::Node.new("aaa")
15
+ test( doc2 )
16
+ end
17
+
18
+ 1000.times { |i|
19
+ print "\r#{i}"; $stdout.flush
20
+ test2
21
+ }
@@ -0,0 +1,32 @@
1
+ #!/usr/bin/ruby -w -I.
2
+
3
+ $FAILS = []
4
+
5
+ def test( doc, doc2, iter )
6
+ doc.root = XML::Node.new("ccc")
7
+ iter.times { |i|
8
+ doc.root.child_add(doc2.root)
9
+ # doc.root << doc2.root.copy(true)
10
+ }
11
+ return doc
12
+ end
13
+
14
+ def test2(iter)
15
+ doc = XML::Document.new('1.0')
16
+ doc2 = XML::Document.new('1.0')
17
+ doc2.root = XML::Node.new("aaa")
18
+ ret = test( doc, doc2, iter )
19
+ li=ret.find('aaa').length
20
+ $FAILS << [li,iter] unless li == iter
21
+ end
22
+
23
+ test2(5)
24
+ 1000.times do |i|
25
+ test2(i)
26
+ print "\r#{i}"; $stdout.flush
27
+ end
28
+
29
+ puts "\n#{$FAILS.length} failures"
30
+ p $FAILS
31
+
32
+
@@ -0,0 +1,14 @@
1
+
2
+ # This is related to bug 8337, complaint is on amd64/fbsd
3
+ # unknown if it happens on other amd64/os combos
4
+
5
+ Process.setrlimit(Process::RLIMIT_NOFILE,10005)
6
+
7
+ (1..10000).each{|time|
8
+ XML::Document.file(File.join(File.dirname(__FILE__),'ets_test.xml'))
9
+ if time % 100 == 0
10
+ print "\r#{time}"
11
+ $stdout.flush
12
+ end
13
+ }
14
+ puts "\n"
@@ -0,0 +1,21 @@
1
+ require 'libxml'
2
+
3
+ 1000.times do |count|
4
+
5
+ xml_doc = XML::Document.new()
6
+ xml_doc.encoding = "UTF-8"
7
+ xml_doc.root = XML::Node.new("Request")
8
+
9
+ 1000.times do |index|
10
+
11
+ xml_doc.root << node = XML::Node.new("row")
12
+ node["user_id"] = index.to_s
13
+ node << "600445"
14
+
15
+ end
16
+
17
+ xml_str = xml_doc.to_s
18
+ print "\r#{count}"
19
+ $stdout.flush
20
+ end
21
+ puts "\n"
data/test/ets_gpx.rb ADDED
@@ -0,0 +1,26 @@
1
+ require 'libxml'
2
+
3
+ 100.times do
4
+ doc = XML::Document.new
5
+ doc.encoding = 'UTF-8'
6
+
7
+ root = XML::Node.new 'gpx'
8
+ root['version'] = '1.0'
9
+ root['creator'] = 'OpenStreetMap.org'
10
+ root['xmlns'] = "http://www.topografix.com/GPX/1/0/"
11
+
12
+ doc.root = root
13
+
14
+ track = XML::Node.new 'trk'
15
+ doc.root << track
16
+
17
+ trkseg = XML::Node.new 'trkseg'
18
+ track << trkseg
19
+
20
+ 1.upto(10000) do |n|
21
+ trkpt = XML::Node.new 'trkpt'
22
+ trkpt['lat'] = n.to_s
23
+ trkpt['lon'] = n.to_s
24
+ trkseg << trkpt
25
+ end
26
+ end
@@ -0,0 +1,21 @@
1
+ require 'libxml'
2
+
3
+ # test of bug 13310, clears MEM2
4
+
5
+ include GC
6
+
7
+ inner = XML::Node.new('inner')
8
+ save = nil
9
+ 1.times do
10
+ outer = XML::Node.new('outer')
11
+ outer.child = inner
12
+ 1.times do
13
+ doc = XML::Document.new
14
+ doc.root = outer
15
+ # Uncomment the following line and it won't crash
16
+ # save = doc
17
+ end
18
+ garbage_collect
19
+ end
20
+ garbage_collect
21
+ puts inner
data/test/ets_test.xml ADDED
@@ -0,0 +1,2 @@
1
+ <?xml version="1.0"?>
2
+ <test/>
data/test/ets_tsr.rb ADDED
@@ -0,0 +1,9 @@
1
+ require 'libxml'
2
+
3
+ 1_000_000.times {|n|
4
+ j=XML::Node.new2(nil,"happy#{n}")
5
+ 10.times {|r|
6
+ j1=XML::Node.new("happy#{r}","farts")
7
+ j.child=j1
8
+ }
9
+ }
@@ -1,7 +1,6 @@
1
1
  #!/usr/local/bin/ruby
2
2
 
3
- require 'libxml_test'
4
- require 'xml/libxml' # needs the ruby code too
3
+ require 'libxml'
5
4
 
6
5
  class XML::Node
7
6
  def first_child_element
@@ -18,7 +17,7 @@ end
18
17
  #
19
18
  def merge(forms)
20
19
  starting_form = forms.shift
21
- forms.inject(starting_form) do |master_form,form|
20
+ forms.inject(starting_form) do |master_form,form|
22
21
  master_form.find("//body").first << form.find("//body").first.first_child_element
23
22
  master_form
24
23
  end
@@ -32,7 +31,7 @@ end
32
31
  #
33
32
 
34
33
  if (ARGV[0].to_i > 0)
35
- count = ARGV[0].to_i
34
+ count = ARGV[0].to_i
36
35
  else
37
36
  count = 500
38
37
  end
@@ -48,7 +47,7 @@ result = merge(merge_list)
48
47
  puts "Merged!"
49
48
 
50
49
  #File.open(File.join(File.dirname(__FILE__), 'model', '/generated_form.xml'), "w") do |f|
51
- # puts "Trying to write to file"
50
+ # puts "Trying to write to file"
52
51
  # f << result
53
52
  # puts "After trying to write to file"
54
53
  #end
File without changes
File without changes
File without changes
@@ -1,4 +1,4 @@
1
- # $Id: rubynet_project 26 2005-12-19 19:53:07Z roscopeco $
1
+ # $Id: rubynet_project 260 2008-02-01 20:56:58Z transami $
2
2
 
3
3
  copyright: 2001-2003, rubynet.org
4
4
  description: Ruby bindings for the libxml2 library. The API for this
File without changes
File without changes
File without changes
@@ -1,4 +1,4 @@
1
- require "libxml_test"
1
+ require "libxml"
2
2
 
3
3
  xp = XML::Parser.new
4
4
  xp.string = '<?xml version="1.0" encoding="utf-8"?>
@@ -66,7 +66,7 @@ schema = XML::Schema.from_string('<?xml version="1.0" encoding="ISO-8859-1" ?>
66
66
 
67
67
  p schema
68
68
 
69
- if doc.validate_schema(schema) { |message, error| puts "#{error ? 'error' : 'warning'} : #{message}" }
69
+ if doc.validate_schema(schema) { |message, error| puts "#{error ? 'error' : 'warning'} : #{message}" }
70
70
  puts "validation passed"
71
71
  else
72
72
  puts "validation failed"
@@ -1,6 +1,6 @@
1
- # $Id: tc_xml_document.rb 183 2007-09-21 14:09:52Z danj $
1
+ require "libxml"
2
2
  require 'test/unit'
3
- require "libxml_test"
3
+
4
4
 
5
5
  class TC_XML_Document < Test::Unit::TestCase
6
6
  def setup()
@@ -1,5 +1,4 @@
1
- # $Id: tc_xml_document_write.rb 67 2006-04-17 13:30:22Z roscopeco $
2
- require "libxml_test"
1
+ require "libxml"
3
2
  require 'test/unit'
4
3
 
5
4
  class TC_XML_Document_Write < Test::Unit::TestCase
@@ -1,5 +1,4 @@
1
- # $Id: tc_xml_document_write2.rb 67 2006-04-17 13:30:22Z roscopeco $
2
- require "libxml_test"
1
+ require "libxml"
3
2
  require 'test/unit'
4
3
 
5
4
  class TC_XML_Document_Write2 < Test::Unit::TestCase
@@ -1,5 +1,4 @@
1
- # $Id: tc_xml_document_write3.rb 107 2006-11-20 01:22:08Z roscopeco $
2
- require "libxml_test"
1
+ require "libxml"
3
2
  require 'test/unit'
4
3
 
5
4
  class TC_XML_Document_Write3 < Test::Unit::TestCase
@@ -1,5 +1,4 @@
1
- # $Id: tc_xml_html_parser.rb 182 2007-09-12 14:47:09Z danj $
2
- require "libxml_test"
1
+ require "libxml"
3
2
  require 'test/unit'
4
3
 
5
4
  class TC_XML_HTMLParser < Test::Unit::TestCase
@@ -19,15 +18,15 @@ class TC_XML_HTMLParser < Test::Unit::TestCase
19
18
  doc = @xp.parse
20
19
 
21
20
  assert_instance_of XML::Document, doc
22
-
21
+
23
22
  root = doc.root
24
23
  assert_instance_of XML::Node, root
25
24
  assert_equal 'html', root.name
26
-
25
+
27
26
  head = root.child
28
27
  assert_instance_of XML::Node, head
29
28
  assert_equal 'head', head.name
30
-
29
+
31
30
  meta = head.child
32
31
  assert_instance_of XML::Node, meta
33
32
  assert_equal 'meta', meta.name
@@ -37,7 +36,7 @@ class TC_XML_HTMLParser < Test::Unit::TestCase
37
36
  body = head.next
38
37
  assert_instance_of XML::Node, body
39
38
  assert_equal 'body', body.name
40
-
39
+
41
40
  hello = body.child
42
41
  # It appears that some versions of libxml2 add a layer of <p>
43
42
  # cant figure our why or how, so this skips it if there
@@ -45,11 +44,11 @@ class TC_XML_HTMLParser < Test::Unit::TestCase
45
44
 
46
45
  assert_instance_of XML::Node, hello
47
46
  assert_equal 'Hello', hello.content
48
-
47
+
49
48
  br = hello.next
50
49
  assert_instance_of XML::Node, br
51
50
  assert_equal 'br', br.name
52
-
51
+
53
52
  world = br.next
54
53
  assert_instance_of XML::Node, world
55
54
  assert_equal 'World', world.content
@@ -1,5 +1,4 @@
1
- # $Id: tc_xml_node.rb 191 2007-10-05 14:56:49Z danj $
2
- require "libxml_test"
1
+ require "libxml"
3
2
  require 'test/unit'
4
3
 
5
4
  class TC_XML_Node < Test::Unit::TestCase
@@ -1,5 +1,4 @@
1
- # $Id: tc_xml_node2.rb 67 2006-04-17 13:30:22Z roscopeco $
2
- require "libxml_test"
1
+ require "libxml"
3
2
  require 'test/unit'
4
3
 
5
4
  class TC_XML_Node2 < Test::Unit::TestCase
@@ -1,5 +1,4 @@
1
- # $Id: tc_xml_node3.rb 107 2006-11-20 01:22:08Z roscopeco $
2
- require "libxml_test"
1
+ require "libxml"
3
2
  require 'test/unit'
4
3
 
5
4
  class TC_XML_Node3 < Test::Unit::TestCase
@@ -21,7 +20,7 @@ class TC_XML_Node3 < Test::Unit::TestCase
21
20
  def test_xml_node_doc_content()
22
21
  assert_equal 'onetwo', @root.content
23
22
  first = @root.child
24
-
23
+
25
24
  assert_equal 'one', first.content
26
25
  assert_equal 'two', first.next.content
27
26
  end
@@ -1,5 +1,4 @@
1
- # $Id: tc_xml_node4.rb 142 2007-08-29 18:56:22Z danj $
2
- require "libxml_test"
1
+ require "libxml"
3
2
  require 'test/unit'
4
3
 
5
4
  class TC_XML_Node4 < Test::Unit::TestCase
@@ -20,68 +19,68 @@ class TC_XML_Node4 < Test::Unit::TestCase
20
19
  def teardown()
21
20
  @root = nil
22
21
  end
23
-
22
+
24
23
  def test_xml_node_eql?()
25
24
  first1 = @root.child
26
25
  first2 = @doc2.root.child
27
-
26
+
28
27
  assert_not_equal first1.object_id, first2.object_id
29
28
  assert first1.eql?(first2)
30
29
  assert first2.eql?(first1)
31
-
30
+
32
31
  assert_equal first1, first2
33
32
  end
34
33
 
35
34
  def test_xml_node_hash()
36
35
  first1 = @root.child
37
36
  first2 = @doc2.root.child
38
-
37
+
39
38
  assert_not_equal first1.object_id, first2.object_id
40
39
  assert_equal first1.hash, first2.hash
41
40
  end
42
41
 
43
42
  def test_01_xml_node_remove!()
44
43
  first = @root.child
45
-
44
+
46
45
  assert_equal 'fixnum', first.name
47
46
  assert_equal 'fixnum', first.next.name
48
-
47
+
49
48
  first.next.remove!
50
-
49
+
51
50
  assert_equal 'fixnum', first.name
52
51
  assert_equal nil, first.next
53
52
  end
54
53
 
55
54
  def test_02_xml_node_remove!()
56
55
  first = @root.child
57
-
56
+
58
57
  assert_equal 'fixnum', first.name
59
58
  assert_equal 'fixnum', first.next.name
60
59
  assert_equal 'one', first.content
61
-
60
+
62
61
  first.remove!
63
-
64
- first = @root.child
62
+
63
+ first = @root.child
65
64
  assert_equal 'fixnum', first.name
66
65
  assert_equal nil, first.next
67
66
  assert_equal 'two', first.content
68
67
  end
69
-
68
+
70
69
  # TODO need to test namespace support
71
70
  def test_xml_node_find_first()
72
71
  first = @root.find_first('//fixnum')
73
-
72
+
74
73
  assert_equal 'one', first.content
75
74
  end
76
-
75
+
77
76
  def test_xml_node_property_set_remove()
78
77
  assert_equal 'booga', @root['uga']
79
78
  @root['uga'] = nil
80
79
  assert_equal nil , @root['uga']
81
80
  assert_equal "<ruby_array foo=\"bar\">\n <fixnum>one</fixnum>\n <fixnum>two</fixnum>\n</ruby_array>",
82
- @root.to_s
81
+ @root.to_s
83
82
  end
84
-
85
-
86
-
83
+
84
+
85
+
87
86
  end