libxml-ruby 0.6.0-x86-mswin32-60 → 0.7.0-x86-mswin32-60

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 (171) hide show
  1. data/CHANGES +42 -0
  2. data/README +123 -117
  3. data/doc/classes/XML.html +226 -0
  4. data/doc/classes/XML/Attr.html +969 -0
  5. data/doc/classes/XML/Attributes.html +487 -0
  6. data/doc/classes/XML/Document.html +1423 -0
  7. data/doc/classes/XML/Dtd.html +159 -0
  8. data/doc/classes/XML/Error.html +111 -0
  9. data/doc/classes/XML/HTMLParser.html +330 -0
  10. data/doc/classes/XML/InputCallbacks.html +154 -0
  11. data/doc/classes/XML/NS.html +366 -0
  12. data/doc/classes/XML/Node.html +3292 -0
  13. data/doc/classes/XML/Node/FailedModify.html +111 -0
  14. data/doc/classes/XML/Node/Set.html +435 -0
  15. data/doc/classes/XML/Node/SetNamespace.html +111 -0
  16. data/doc/classes/XML/Node/UnknownType.html +111 -0
  17. data/doc/classes/XML/Parser.html +2178 -0
  18. data/doc/classes/XML/Parser/Context.html +1233 -0
  19. data/doc/classes/XML/Parser/ParseError.html +111 -0
  20. data/doc/classes/XML/Reader.html +2173 -0
  21. data/doc/classes/XML/SaxParser.html +396 -0
  22. data/doc/classes/XML/SiblingEnum.html +142 -0
  23. data/doc/classes/XML/State.html +118 -0
  24. data/doc/classes/XML/Tree.html +224 -0
  25. data/doc/classes/XML/XInclude.html +117 -0
  26. data/doc/classes/XML/XInclude/Error.html +111 -0
  27. data/doc/classes/XML/XMLParserOptions.html +198 -0
  28. data/doc/classes/XML/XPath.html +269 -0
  29. data/doc/classes/XML/XPath/Context.html +193 -0
  30. data/doc/classes/XML/XPath/InvalidPath.html +111 -0
  31. data/doc/classes/XML/XPath/Object.html +439 -0
  32. data/doc/classes/XML/XPointer.html +164 -0
  33. data/doc/classes/XML/XPointer/Context.html +117 -0
  34. data/doc/classes/XML/XPointer/Context/InvalidPath.html +111 -0
  35. data/doc/classes/XML/XPointer/InvalidExpression.html +111 -0
  36. data/doc/classes/singleton.html +114 -0
  37. data/doc/created.rid +1 -0
  38. data/doc/files/CHANGES.html +375 -0
  39. data/doc/files/LICENSE.html +133 -0
  40. data/doc/files/README.html +279 -0
  41. data/doc/files/VERSION.html +107 -0
  42. data/doc/files/ext/libxml/cbg_c.html +101 -0
  43. data/doc/files/ext/libxml/libxml_c.html +101 -0
  44. data/doc/files/ext/libxml/ruby_xml_attr_c.html +101 -0
  45. data/doc/files/ext/libxml/ruby_xml_attributes_c.html +101 -0
  46. data/doc/files/ext/libxml/ruby_xml_document_c.html +101 -0
  47. data/doc/files/ext/libxml/ruby_xml_dtd_c.html +101 -0
  48. data/doc/files/ext/libxml/ruby_xml_html_parser_c.html +101 -0
  49. data/doc/files/ext/libxml/ruby_xml_input_cbg_c.html +101 -0
  50. data/doc/files/ext/libxml/ruby_xml_node_c.html +101 -0
  51. data/doc/files/ext/libxml/ruby_xml_node_set_c.html +101 -0
  52. data/doc/files/ext/libxml/ruby_xml_ns_c.html +101 -0
  53. data/doc/files/ext/libxml/ruby_xml_parser_c.html +101 -0
  54. data/doc/files/ext/libxml/ruby_xml_parser_context_c.html +101 -0
  55. data/doc/files/ext/libxml/ruby_xml_reader_c.html +101 -0
  56. data/doc/files/ext/libxml/ruby_xml_sax_parser_c.html +101 -0
  57. data/doc/files/ext/libxml/ruby_xml_schema_c.html +101 -0
  58. data/doc/files/ext/libxml/ruby_xml_state_c.html +101 -0
  59. data/doc/files/ext/libxml/ruby_xml_tree_c.html +101 -0
  60. data/doc/files/ext/libxml/ruby_xml_xinclude_c.html +101 -0
  61. data/doc/files/ext/libxml/ruby_xml_xpath_c.html +101 -0
  62. data/doc/files/ext/libxml/ruby_xml_xpath_context_c.html +101 -0
  63. data/doc/files/ext/libxml/ruby_xml_xpath_object_c.html +101 -0
  64. data/doc/files/ext/libxml/ruby_xml_xpointer_c.html +101 -0
  65. data/doc/files/ext/libxml/ruby_xml_xpointer_context_c.html +101 -0
  66. data/doc/files/lib/libxml_rb.html +115 -0
  67. data/doc/files/lib/xml/libxml_rb.html +114 -0
  68. data/doc/fr_class_index.html +60 -0
  69. data/doc/fr_file_index.html +56 -0
  70. data/doc/fr_method_index.html +373 -0
  71. data/doc/index.html +24 -0
  72. data/doc/rdoc-style.css +208 -0
  73. data/ext/libxml/cbg.c +76 -76
  74. data/ext/libxml/extconf.rb +308 -308
  75. data/ext/libxml/libxml.c +58 -62
  76. data/ext/libxml/ruby_libxml.h +1 -0
  77. data/ext/libxml/ruby_xml_attr.c +201 -113
  78. data/ext/libxml/ruby_xml_attr.h +6 -9
  79. data/ext/libxml/ruby_xml_attributes.c +268 -0
  80. data/ext/libxml/ruby_xml_attributes.h +17 -0
  81. data/ext/libxml/ruby_xml_document.c +80 -66
  82. data/ext/libxml/ruby_xml_dtd.c +2 -2
  83. data/ext/libxml/ruby_xml_dtd.h +17 -17
  84. data/ext/libxml/ruby_xml_html_parser.c +18 -19
  85. data/ext/libxml/ruby_xml_html_parser.h +29 -29
  86. data/ext/libxml/ruby_xml_input_cbg.c +6 -0
  87. data/ext/libxml/ruby_xml_input_cbg.h +20 -20
  88. data/ext/libxml/ruby_xml_node.c +438 -536
  89. data/ext/libxml/ruby_xml_node.h +17 -27
  90. data/ext/libxml/ruby_xml_node_set.c +10 -9
  91. data/ext/libxml/ruby_xml_node_set.h +20 -20
  92. data/ext/libxml/ruby_xml_ns.c +60 -69
  93. data/ext/libxml/ruby_xml_ns.h +12 -21
  94. data/ext/libxml/ruby_xml_parser.c +54 -53
  95. data/ext/libxml/ruby_xml_parser.h +31 -31
  96. data/ext/libxml/ruby_xml_parser_context.c +37 -91
  97. data/ext/libxml/ruby_xml_parser_context.h +20 -22
  98. data/ext/libxml/ruby_xml_reader.h +14 -14
  99. data/ext/libxml/ruby_xml_sax_parser.c +55 -55
  100. data/ext/libxml/ruby_xml_sax_parser.h +56 -56
  101. data/ext/libxml/ruby_xml_schema.c +44 -51
  102. data/ext/libxml/ruby_xml_schema.h +16 -16
  103. data/ext/libxml/ruby_xml_state.c +35 -96
  104. data/ext/libxml/ruby_xml_state.h +2 -3
  105. data/ext/libxml/ruby_xml_tree.h +12 -12
  106. data/ext/libxml/ruby_xml_xinclude.h +13 -13
  107. data/ext/libxml/ruby_xml_xpath.c +57 -18
  108. data/ext/libxml/ruby_xml_xpath.h +23 -23
  109. data/ext/libxml/ruby_xml_xpath_context.c +11 -7
  110. data/ext/libxml/ruby_xml_xpath_context.h +20 -20
  111. data/ext/libxml/ruby_xml_xpath_object.c +9 -16
  112. data/ext/libxml/ruby_xml_xpath_object.h +4 -10
  113. data/ext/libxml/ruby_xml_xpointer.c +11 -11
  114. data/ext/libxml/ruby_xml_xpointer.h +27 -27
  115. data/ext/libxml/ruby_xml_xpointer_context.h +18 -18
  116. data/ext/libxml/version.h +2 -2
  117. data/lib/libxml.rb +134 -125
  118. data/lib/libxml_ruby.so +0 -0
  119. data/mingw/libiconv-2.dll +0 -0
  120. data/mingw/libxml2-2.dll +0 -0
  121. data/mingw/libxml_ruby.so +0 -0
  122. data/test/ets_copy_bug.rb +1 -1
  123. data/test/ets_copy_bug2.rb +16 -27
  124. data/test/ets_doc_to_s.rb +1 -1
  125. data/test/ets_gpx.rb +1 -1
  126. data/test/ets_node_gc.rb +1 -1
  127. data/test/ets_tsr.rb +1 -1
  128. data/test/tc_well_formed.rb +1 -1
  129. data/test/tc_xml_attributes.rb +106 -0
  130. data/test/tc_xml_document.rb +10 -10
  131. data/test/tc_xml_document_write3.rb +1 -1
  132. data/test/tc_xml_dtd.rb +49 -0
  133. data/test/tc_xml_html_parser.rb +3 -3
  134. data/test/tc_xml_node.rb +69 -33
  135. data/test/tc_xml_node_attr.rb +170 -0
  136. data/test/{tc_xml_node8.rb → tc_xml_node_cdata.rb} +2 -2
  137. data/test/{tc_xml_node9.rb → tc_xml_node_comment.rb} +3 -3
  138. data/test/tc_xml_node_edit.rb +91 -0
  139. data/test/tc_xml_parser.rb +97 -50
  140. data/test/tc_xml_parser_context.rb +61 -23
  141. data/test/tc_xml_schema.rb +39 -0
  142. data/test/tc_xml_xinclude.rb +5 -6
  143. data/test/tc_xml_xpath.rb +51 -27
  144. data/test/test_suite.rb +27 -0
  145. data/vc/{libxml.sln → libxml_ruby.sln} +5 -5
  146. data/vc/{libxml.vcproj → libxml_ruby.vcproj} +9 -1
  147. metadata +106 -54
  148. data/mingw/mingw.rake +0 -36
  149. data/test/dtd-test.rb +0 -24
  150. data/test/merge_bug.rb +0 -55
  151. data/test/schema-test.rb +0 -74
  152. data/test/tc_xml_node2.rb +0 -25
  153. data/test/tc_xml_node3.rb +0 -27
  154. data/test/tc_xml_node4.rb +0 -86
  155. data/test/tc_xml_node5.rb +0 -52
  156. data/test/tc_xml_node6.rb +0 -27
  157. data/test/tc_xml_node7.rb +0 -35
  158. data/test/tc_xml_parser2.rb +0 -16
  159. data/test/tc_xml_parser3.rb +0 -23
  160. data/test/tc_xml_parser4.rb +0 -33
  161. data/test/tc_xml_parser5.rb +0 -27
  162. data/test/tc_xml_parser6.rb +0 -23
  163. data/test/tc_xml_parser7.rb +0 -28
  164. data/test/tc_xml_parser8.rb +0 -32
  165. data/test/tc_xml_parser9.rb +0 -11
  166. data/test/tc_xml_xpath2.rb +0 -14
  167. data/work/vc/debug/libxml.exp +0 -0
  168. data/work/vc/debug/libxml.ilk +0 -0
  169. data/work/vc/debug/libxml.lib +0 -0
  170. data/work/vc/debug/libxml.pdb +0 -0
  171. data/work/vc/debug/libxml.so +0 -0
data/mingw/mingw.rake DELETED
@@ -1,36 +0,0 @@
1
- # We can't use Ruby's standard build procedures
2
- # on Windows because the Ruby executable is
3
- # built with VC++ while here we want to build
4
- # with MingW. So just roll our own...
5
-
6
- require 'rake/clean'
7
- require 'rbconfig'
8
-
9
- RUBY_INCLUDE_DIR = Config::CONFIG["archdir"]
10
- RUBY_BIN_DIR = Config::CONFIG["bindir"]
11
- RUBY_LIB_DIR = Config::CONFIG["libdir"]
12
- RUBY_SHARED_LIB = Config::CONFIG["LIBRUBY"]
13
- RUBY_SHARED_DLL = RUBY_SHARED_LIB.gsub(/lib$/, 'dll')
14
-
15
- CLEAN.include('*.o')
16
- CLOBBER.include('libxml.so')
17
-
18
- task :default => "libxml"
19
-
20
- SRC = FileList['../ext/libxml/*.c']
21
- OBJ = SRC.collect do |file_name|
22
- File.basename(file_name).ext('o')
23
- end
24
-
25
- SRC.each do |srcfile|
26
- objfile = File.basename(srcfile).ext('o')
27
- file objfile => srcfile do
28
- command = "gcc -c -fPIC -O2 -Wall -o #{objfile} -I/usr/local/include #{srcfile} -I#{RUBY_INCLUDE_DIR}"
29
- sh "sh -c '#{command}'"
30
- end
31
- end
32
-
33
- file "libxml" => OBJ do
34
- command = "libtool --mode=link gcc -shared -o libxml_ruby.so -L/usr/local/lib -lxml2 #{OBJ} #{RUBY_BIN_DIR}/#{RUBY_SHARED_DLL}"
35
- sh "sh -c '#{command}'"
36
- end
data/test/dtd-test.rb DELETED
@@ -1,24 +0,0 @@
1
- require "libxml"
2
-
3
- xp = XML::Parser.new
4
- xp.string = '<?xml version="1.0" encoding="utf-8"?>
5
- <root><head a="ee" id="1">ass<buzz/></head><descr>really big ass</descr></root>'
6
-
7
- doc = xp.parse
8
-
9
- dtd = XML::Dtd.new('
10
- <!ELEMENT root (head, descr)>
11
- <!ELEMENT head (#PCDATA)>
12
- <!ATTLIST head
13
- id NMTOKEN #REQUIRED
14
- a CDATA #IMPLIED
15
- >
16
- <!ELEMENT descr (#PCDATA)>
17
- ')
18
-
19
- if doc.validate(dtd) { |message, error| puts "#{error ? 'error' : 'warning'} : #{message}" }
20
- puts "validation passed"
21
- else
22
- puts "validation failed"
23
- end
24
-
data/test/merge_bug.rb DELETED
@@ -1,55 +0,0 @@
1
- #!/usr/local/bin/ruby
2
-
3
- require 'libxml'
4
-
5
- class XML::Node
6
- def first_child_element
7
- result = nil
8
- if self.children?
9
- self.each_child{|node_child| result = node_child if ((result.nil?) && node_child.element?) }
10
- end
11
- result
12
- end
13
- end
14
-
15
- #
16
- # Method which generates crash
17
- #
18
- def merge(forms)
19
- starting_form = forms.shift
20
- forms.inject(starting_form) do |master_form,form|
21
- master_form.find("//body").first << form.find("//body").first.first_child_element
22
- master_form
23
- end
24
- end
25
-
26
- #
27
- # Run
28
- # Must tell it how many times to merge a document
29
- # On my linux box, it takes about 350 to crash it
30
- # On my OS X box, it takes about 150
31
- #
32
-
33
- if (ARGV[0].to_i > 0)
34
- count = ARGV[0].to_i
35
- else
36
- count = 500
37
- end
38
-
39
-
40
- merge_list = []
41
-
42
- count.times do
43
- merge_list << XML::Parser.string(File.read(File.join(File.dirname(__FILE__), 'model', 'merge_bug_data.xml'))).parse
44
- end
45
-
46
- result = merge(merge_list)
47
- puts "Merged!"
48
-
49
- #File.open(File.join(File.dirname(__FILE__), 'model', '/generated_form.xml'), "w") do |f|
50
- # puts "Trying to write to file"
51
- # f << result
52
- # puts "After trying to write to file"
53
- #end
54
-
55
- puts "nothing left to do but print this message"
data/test/schema-test.rb DELETED
@@ -1,74 +0,0 @@
1
- require "libxml"
2
-
3
- xp = XML::Parser.new
4
- xp.string = '<?xml version="1.0" encoding="utf-8"?>
5
-
6
- <shiporder orderid="889923"
7
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
8
- xsi:noNamespaceSchemaLocation="shiporder.xsd">
9
- <orderperson>John Smith</orderperson>
10
- <shipto>
11
- <name>Ola Nordmann</name>
12
- <address>Langgt 23</address>
13
- <city>4000 Stavanger</city>
14
- <country>Norway</country>
15
- </shipto>
16
- <item>
17
- <title>Empire Burlesque</title>
18
- <note>Special Edition</note>
19
- <quantity>1</quantity>
20
- <price>10.90</price>
21
- </item>
22
- <item>
23
- <title>Hide your heart</title>
24
- <quantity>1</quantity>
25
- <price>9.90</price>
26
- </item>
27
- </shiporder>
28
- '
29
-
30
- doc = xp.parse
31
-
32
- schema = XML::Schema.from_string('<?xml version="1.0" encoding="ISO-8859-1" ?>
33
- <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
34
-
35
- <xs:element name="shiporder">
36
- <xs:complexType>
37
- <xs:sequence>
38
- <xs:element name="orderperson" type="xs:string"/>
39
- <xs:element name="shipto">
40
- <xs:complexType>
41
- <xs:sequence>
42
- <xs:element name="name" type="xs:string"/>
43
- <xs:element name="address" type="xs:string"/>
44
- <xs:element name="city" type="xs:string"/>
45
- <xs:element name="country" type="xs:string"/>
46
- </xs:sequence>
47
- </xs:complexType>
48
- </xs:element>
49
- <xs:element name="item" maxOccurs="unbounded">
50
- <xs:complexType>
51
- <xs:sequence>
52
- <xs:element name="title" type="xs:string"/>
53
- <xs:element name="note" type="xs:string" minOccurs="0"/>
54
- <xs:element name="quantity" type="xs:positiveInteger"/>
55
- <xs:element name="price" type="xs:decimal"/>
56
- </xs:sequence>
57
- </xs:complexType>
58
- </xs:element>
59
- </xs:sequence>
60
- <xs:attribute name="orderid" type="xs:string" use="required"/>
61
- </xs:complexType>
62
- </xs:element>
63
-
64
- </xs:schema>
65
- ')
66
-
67
- p schema
68
-
69
- if doc.validate_schema(schema) { |message, error| puts "#{error ? 'error' : 'warning'} : #{message}" }
70
- puts "validation passed"
71
- else
72
- puts "validation failed"
73
- end
74
-
data/test/tc_xml_node2.rb DELETED
@@ -1,25 +0,0 @@
1
- require "libxml"
2
- require 'test/unit'
3
-
4
- class TC_XML_Node2 < Test::Unit::TestCase
5
- def setup()
6
- xp = XML::Parser.new()
7
- str = '<ruby_array uga="booga" foo="bar"><fixnum>one</fixnum><fixnum>two</fixnum></ruby_array>'
8
- assert_equal(str, xp.string = str)
9
- doc = xp.parse
10
- assert_instance_of(XML::Document, doc)
11
- assert_instance_of(XML::Node, doc.root)
12
- @root = doc.root
13
- assert_instance_of(XML::Node, @root)
14
- end
15
-
16
- def teardown()
17
- @root = nil
18
- end
19
-
20
- def test_xml_node_doc_get()
21
- GC.start
22
- assert_instance_of(XML::Node, @root)
23
- assert_instance_of(XML::Document, @root.doc)
24
- end
25
- end
data/test/tc_xml_node3.rb DELETED
@@ -1,27 +0,0 @@
1
- require "libxml"
2
- require 'test/unit'
3
-
4
- class TC_XML_Node3 < Test::Unit::TestCase
5
- def setup()
6
- xp = XML::Parser.new()
7
- str = '<ruby_array uga="booga" foo="bar"><fixnum>one</fixnum><fixnum>two</fixnum></ruby_array>'
8
- assert_equal(str, xp.string = str)
9
- doc = xp.parse
10
- assert_instance_of(XML::Document, doc)
11
- assert_instance_of(XML::Node, doc.root)
12
- @root = doc.root
13
- assert_instance_of(XML::Node, @root)
14
- end
15
-
16
- def teardown()
17
- @root = nil
18
- end
19
-
20
- def test_xml_node_doc_content()
21
- assert_equal 'onetwo', @root.content
22
- first = @root.child
23
-
24
- assert_equal 'one', first.content
25
- assert_equal 'two', first.next.content
26
- end
27
- end
data/test/tc_xml_node4.rb DELETED
@@ -1,86 +0,0 @@
1
- require "libxml"
2
- require 'test/unit'
3
-
4
- class TC_XML_Node4 < Test::Unit::TestCase
5
- def setup()
6
- xp = XML::Parser.new()
7
- @str = '<ruby_array uga="booga" foo="bar"><fixnum>one</fixnum><fixnum>two</fixnum></ruby_array>'
8
- assert_equal(@str, xp.string = @str)
9
- doc = xp.parse
10
- xp2=XML::Parser.new()
11
- xp2.string=@str
12
- @doc2 = xp2.parse
13
- assert_instance_of(XML::Document, doc)
14
- assert_instance_of(XML::Node, doc.root)
15
- @root = doc.root
16
- assert_instance_of(XML::Node, @root)
17
- end
18
-
19
- def teardown()
20
- @root = nil
21
- end
22
-
23
- def test_xml_node_eql?()
24
- first1 = @root.child
25
- first2 = @doc2.root.child
26
-
27
- assert_not_equal first1.object_id, first2.object_id
28
- assert first1.eql?(first2)
29
- assert first2.eql?(first1)
30
-
31
- assert_equal first1, first2
32
- end
33
-
34
- def test_xml_node_hash()
35
- first1 = @root.child
36
- first2 = @doc2.root.child
37
-
38
- assert_not_equal first1.object_id, first2.object_id
39
- assert_equal first1.hash, first2.hash
40
- end
41
-
42
- def test_01_xml_node_remove!()
43
- first = @root.child
44
-
45
- assert_equal 'fixnum', first.name
46
- assert_equal 'fixnum', first.next.name
47
-
48
- first.next.remove!
49
-
50
- assert_equal 'fixnum', first.name
51
- assert_equal nil, first.next
52
- end
53
-
54
- def test_02_xml_node_remove!()
55
- first = @root.child
56
-
57
- assert_equal 'fixnum', first.name
58
- assert_equal 'fixnum', first.next.name
59
- assert_equal 'one', first.content
60
-
61
- first.remove!
62
-
63
- first = @root.child
64
- assert_equal 'fixnum', first.name
65
- assert_equal nil, first.next
66
- assert_equal 'two', first.content
67
- end
68
-
69
- # TODO need to test namespace support
70
- def test_xml_node_find_first()
71
- first = @root.find_first('//fixnum')
72
-
73
- assert_equal 'one', first.content
74
- end
75
-
76
- def test_xml_node_property_set_remove()
77
- assert_equal 'booga', @root['uga']
78
- @root['uga'] = nil
79
- assert_equal nil , @root['uga']
80
- assert_equal "<ruby_array foo=\"bar\">\n <fixnum>one</fixnum>\n <fixnum>two</fixnum>\n</ruby_array>",
81
- @root.to_s
82
- end
83
-
84
-
85
-
86
- end
data/test/tc_xml_node5.rb DELETED
@@ -1,52 +0,0 @@
1
- require "libxml"
2
- require 'test/unit'
3
-
4
- class TC_XML_Node5 < Test::Unit::TestCase
5
- def setup()
6
- xp = XML::Parser.new()
7
- str = '<test><num>one</num><num>two</num><num>three</num></test>'
8
- assert_equal(str, xp.string = str)
9
- @doc = xp.parse
10
- assert_instance_of(XML::Document, @doc)
11
- @root = @doc.root
12
- @num1 = @root.child
13
- @num2 = @num1.next
14
- @num3 = @num2.next
15
- end
16
-
17
- def test_libxml_node_add_next_01
18
- @num1.next = XML::Node.new('num', 'one-and-a-half')
19
- assert_equal '<test><num>one</num><num>one-and-a-half</num><num>two</num><num>three</num></test>',
20
- @root.to_s.gsub(/\n\s*/,'')
21
- end
22
-
23
- def test_libxml_node_add_next_02
24
- @num2.next = XML::Node.new('num', 'two-and-a-half')
25
- assert_equal '<test><num>one</num><num>two</num><num>two-and-a-half</num><num>three</num></test>',
26
- @root.to_s.gsub(/\n\s*/,'')
27
- end
28
-
29
- def test_libxml_node_add_next_03
30
- @num3.next = XML::Node.new('num', 'four')
31
- assert_equal '<test><num>one</num><num>two</num><num>three</num><num>four</num></test>',
32
- @root.to_s.gsub(/\n\s*/,'')
33
- end
34
-
35
- def test_libxml_node_add_prev_01
36
- @num1.prev = XML::Node.new('num', 'half')
37
- assert_equal '<test><num>half</num><num>one</num><num>two</num><num>three</num></test>',
38
- @root.to_s.gsub(/\n\s*/,'')
39
- end
40
-
41
- def test_libxml_node_add_prev_02
42
- @num2.prev = XML::Node.new('num', 'one-and-a-half')
43
- assert_equal '<test><num>one</num><num>one-and-a-half</num><num>two</num><num>three</num></test>',
44
- @root.to_s.gsub(/\n\s*/,'')
45
- end
46
-
47
- def test_libxml_node_add_prev_03
48
- @num3.prev = XML::Node.new('num', 'two-and-a-half')
49
- assert_equal '<test><num>one</num><num>two</num><num>two-and-a-half</num><num>three</num></test>',
50
- @root.to_s.gsub(/\n\s*/,'')
51
- end
52
- end
data/test/tc_xml_node6.rb DELETED
@@ -1,27 +0,0 @@
1
- require "libxml"
2
- require 'test/unit'
3
-
4
- class TC_XML_Node6 < Test::Unit::TestCase
5
- def setup()
6
- xp = XML::Parser.string('<ruby_array uga="booga" foo="bar"><fixnum>one</fixnum><fixnum>two</fixnum></ruby_array>')
7
- doc = xp.parse
8
- @root = doc.root
9
- assert_equal 'bar', @root['foo']
10
- end
11
-
12
- def teardown()
13
- @root = nil
14
- end
15
-
16
- def test_xml_node_prop_get_str_sym()
17
- assert_equal @root['foo'], @root[:foo]
18
- assert_equal @root['uga'], @root[:uga]
19
- end
20
-
21
- def test_xml_node_prop_set_str_sym()
22
- @root[:foo] = 'boo'
23
- @root[:uga] = 'zoo'
24
- assert_equal 'boo', @root['foo']
25
- assert_equal 'zoo', @root['uga']
26
- end
27
- end
data/test/tc_xml_node7.rb DELETED
@@ -1,35 +0,0 @@
1
- require "libxml"
2
- require 'test/unit'
3
-
4
- class TC_XML_Node7 < Test::Unit::TestCase
5
- def setup()
6
- xp = XML::Parser.string('<ruby_array uga="booga" foo="bar"><fixnum>one</fixnum><fixnum>two</fixnum></ruby_array>')
7
- doc = xp.parse
8
- @root = doc.root
9
- assert_equal 'bar', @root['foo']
10
- end
11
-
12
- def teardown()
13
- @root = nil
14
- end
15
-
16
- def test_xml_node_properties_traversal_bug()
17
- prop = @root.properties
18
- assert_instance_of XML::Attr, prop
19
- assert_equal 'uga', prop.name
20
- assert_equal 'booga', prop.value
21
-
22
- prop = prop.next
23
- assert_instance_of XML::Attr, prop
24
- assert_equal 'foo', prop.name
25
- assert_equal 'bar', prop.value
26
- end
27
-
28
- def test_xml_node_properties_when_no_attributes
29
- xp = XML::Parser.string("<root></root>")
30
- doc = xp.parse
31
- root = doc.root
32
-
33
- assert_nil root.properties
34
- end
35
- end