libxml-ruby 0.5.4 → 0.6.0
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.
- data/LICENSE +23 -23
- data/README +144 -144
- data/ext/libxml/extconf.rb +26 -27
- data/ext/libxml/libxml.c +7 -37
- data/ext/libxml/{libxml.h → ruby_libxml.h} +93 -98
- data/ext/libxml/ruby_xml_attr.c +405 -387
- data/ext/libxml/ruby_xml_attr.h +19 -18
- data/ext/libxml/ruby_xml_document.c +1111 -1115
- data/ext/libxml/ruby_xml_document.h +27 -24
- data/ext/libxml/ruby_xml_dtd.c +168 -168
- data/ext/libxml/ruby_xml_html_parser.c +449 -450
- data/ext/libxml/ruby_xml_html_parser.h +1 -1
- data/ext/libxml/ruby_xml_input_cbg.c +158 -158
- data/ext/libxml/ruby_xml_node.c +2410 -2395
- data/ext/libxml/ruby_xml_node.h +1 -1
- data/ext/libxml/ruby_xml_node_set.c +170 -170
- data/ext/libxml/ruby_xml_node_set.h +1 -1
- data/ext/libxml/ruby_xml_ns.c +153 -153
- data/ext/libxml/ruby_xml_ns.h +1 -1
- data/ext/libxml/ruby_xml_parser.c +1425 -1422
- data/ext/libxml/ruby_xml_parser.h +1 -1
- data/ext/libxml/ruby_xml_parser_context.c +750 -716
- data/ext/libxml/ruby_xml_parser_context.h +1 -1
- data/ext/libxml/ruby_xml_reader.c +900 -896
- data/ext/libxml/ruby_xml_sax_parser.c +485 -485
- data/ext/libxml/ruby_xml_sax_parser.h +1 -1
- data/ext/libxml/ruby_xml_schema.c +146 -142
- data/ext/libxml/ruby_xml_state.c +5 -6
- data/ext/libxml/ruby_xml_state.h +1 -0
- data/ext/libxml/ruby_xml_tree.c +43 -43
- data/ext/libxml/ruby_xml_tree.h +1 -1
- data/ext/libxml/ruby_xml_xinclude.c +20 -20
- data/ext/libxml/ruby_xml_xinclude.h +1 -1
- data/ext/libxml/ruby_xml_xpath.c +243 -252
- data/ext/libxml/ruby_xml_xpath.h +1 -1
- data/ext/libxml/ruby_xml_xpath_context.c +118 -118
- data/ext/libxml/ruby_xml_xpath_context.h +1 -1
- data/ext/libxml/ruby_xml_xpath_object.c +43 -29
- data/ext/libxml/ruby_xml_xpath_object.h +0 -1
- data/ext/libxml/ruby_xml_xpointer.c +100 -100
- data/ext/libxml/ruby_xml_xpointer.h +1 -1
- data/ext/libxml/ruby_xml_xpointer_context.c +21 -21
- data/ext/libxml/ruby_xml_xpointer_context.h +1 -1
- data/ext/libxml/sax_parser_callbacks.inc +213 -213
- data/ext/libxml/version.h +9 -9
- data/lib/libxml.rb +24 -3
- data/mingw/libiconv-2.dll +0 -0
- data/mingw/libxml2-2.dll +0 -0
- data/mingw/libxml_ruby.so +0 -0
- data/mingw/mingw.rake +36 -0
- data/test/dtd-test.rb +24 -24
- data/test/etc_doc_to_s.rb +1 -3
- data/test/ets_copy_bug.rb +21 -21
- data/test/ets_copy_bug2.rb +32 -32
- data/test/ets_copy_bug3.rb +38 -0
- data/test/ets_doc_file.rb +1 -0
- data/test/{model/default_validation_bug.rb → gc.log} +0 -0
- data/test/merge_bug.rb +55 -55
- data/test/schema-test.rb +74 -74
- data/test/tc_well_formed.rb +11 -0
- data/test/tc_xml_document.rb +52 -52
- data/test/tc_xml_document_write.rb +24 -24
- data/test/tc_xml_document_write2.rb +54 -54
- data/test/tc_xml_document_write3.rb +96 -96
- data/test/tc_xml_html_parser.rb +63 -63
- data/test/tc_xml_node.rb +59 -59
- data/test/tc_xml_node2.rb +25 -25
- data/test/tc_xml_node3.rb +27 -27
- data/test/tc_xml_node4.rb +86 -86
- data/test/tc_xml_node5.rb +52 -52
- data/test/tc_xml_node6.rb +27 -27
- data/test/tc_xml_node7.rb +35 -35
- data/test/tc_xml_node8.rb +32 -32
- data/test/tc_xml_node9.rb +32 -32
- data/test/tc_xml_node_set.rb +24 -24
- data/test/tc_xml_node_set2.rb +37 -37
- data/test/tc_xml_node_xlink.rb +28 -28
- data/test/tc_xml_parser.rb +190 -178
- data/test/tc_xml_parser2.rb +16 -17
- data/test/tc_xml_parser3.rb +23 -23
- data/test/tc_xml_parser4.rb +33 -33
- data/test/tc_xml_parser5.rb +27 -27
- data/test/tc_xml_parser6.rb +23 -23
- data/test/tc_xml_parser7.rb +28 -28
- data/test/tc_xml_parser8.rb +32 -32
- data/test/tc_xml_parser9.rb +11 -0
- data/test/tc_xml_parser_context.rb +88 -88
- data/test/tc_xml_reader.rb +112 -109
- data/test/tc_xml_sax_parser.rb +104 -94
- data/test/tc_xml_sax_parser2.rb +51 -0
- data/test/tc_xml_xinclude.rb +30 -30
- data/test/tc_xml_xpath.rb +38 -38
- data/test/tc_xml_xpath2.rb +14 -0
- data/test/tc_xml_xpointer.rb +78 -78
- data/vc/libxml.sln +20 -0
- data/vc/libxml.vcproj +389 -0
- data/work/Rakefile +247 -0
- data/work/task/make +26 -0
- data/work/task/memory +37 -0
- data/work/task/rdoc +39 -0
- data/work/task/setup +1616 -0
- data/work/task/test +29 -0
- data/work/test/ets_runner.rb +33 -0
- data/work/test/libxml_test.rb +3 -0
- data/work/test/runner.rb +0 -0
- data/work/test/runner_ets.rb +33 -0
- data/work/vc/debug/libxml.exp +0 -0
- data/work/vc/debug/libxml.ilk +0 -0
- data/work/vc/debug/libxml.lib +0 -0
- data/work/vc/debug/libxml.pdb +0 -0
- data/work/vc/debug/libxml.so +0 -0
- metadata +158 -189
- data/MANIFEST +0 -138
- data/NOTES +0 -9
- data/Rakefile +0 -38
- data/TODO +0 -75
- data/VERSION +0 -1
- data/log/Changelog-0.txt +0 -426
- data/log/Changelog.txt +0 -435
- data/meta/project.yaml +0 -27
- data/meta/unixname +0 -1
- data/setup.rb +0 -1472
- data/site/css/normal.css +0 -182
- data/site/img/raze-tiny.png +0 -0
- data/site/img/red-cube.jpg +0 -0
- data/site/img/xml-ruby.png +0 -0
- data/site/index.xml +0 -43
- data/site/install.xml +0 -77
- data/site/layout.rhtml +0 -38
- data/site/layout.xsl +0 -67
- data/site/license.xml +0 -32
- data/site/log/changelog.xml +0 -1324
- data/site/log/changelog.xsl +0 -42
- data/test/model/merge_bug_data.xml +0 -58
- data/test/model/rubynet.xml +0 -78
- data/test/model/rubynet_project +0 -13
- data/test/model/saxtest.xml +0 -5
- data/test/model/simple.xml +0 -7
- data/test/model/xinclude.xml +0 -5
|
@@ -1,96 +1,96 @@
|
|
|
1
|
-
require "libxml"
|
|
2
|
-
require 'test/unit'
|
|
3
|
-
|
|
4
|
-
class TC_XML_Document_Write3 < Test::Unit::TestCase
|
|
5
|
-
def setup()
|
|
6
|
-
@doc = XML::Document.new('1.0')
|
|
7
|
-
assert_instance_of(XML::Document, @doc)
|
|
8
|
-
@doc.root = XML::Node.new('rubynet')
|
|
9
|
-
end
|
|
10
|
-
|
|
11
|
-
def teardown()
|
|
12
|
-
@doc = nil
|
|
13
|
-
end
|
|
14
|
-
|
|
15
|
-
def test_ruby_xml_document_write_child()
|
|
16
|
-
xml = "<?xml version=\"1.0\"?>\n<rubynet>\n <pkg/>\n</rubynet>\n"
|
|
17
|
-
@doc.root.child = XML::Node.new('pkg')
|
|
18
|
-
assert_equal(xml, @doc.to_s)
|
|
19
|
-
end
|
|
20
|
-
|
|
21
|
-
def test_ruby_xml_document_write_content_append()
|
|
22
|
-
xml = "<?xml version=\"1.0\"?>\n"
|
|
23
|
-
xml << "<rubynet>\n"
|
|
24
|
-
xml << " <pkg>\n"
|
|
25
|
-
xml << " <meta>\n"
|
|
26
|
-
xml << " <pkgname>libxml</pkgname>\n"
|
|
27
|
-
xml << " </meta>\n"
|
|
28
|
-
xml << " </pkg>\n"
|
|
29
|
-
xml << "</rubynet>\n"
|
|
30
|
-
pkg = @doc.root.child = XML::Node.new('pkg')
|
|
31
|
-
meta = pkg.child = XML::Node.new('meta')
|
|
32
|
-
assert_equal meta, meta << (pkgname = XML::Node.new('pkgname'))
|
|
33
|
-
pkgname << 'libxml'
|
|
34
|
-
assert_equal(xml, @doc.to_s)
|
|
35
|
-
end
|
|
36
|
-
|
|
37
|
-
def test_ruby_xml_document_write_node_search_href()
|
|
38
|
-
prefix = 'xlink'
|
|
39
|
-
uri = 'http://www.rubynet.org'
|
|
40
|
-
xml = "<?xml version=\"1.0\"?>\n"
|
|
41
|
-
xml << "<rubynet xmlns:#{prefix}=\"#{uri}\">\n"
|
|
42
|
-
xml << " <pkg/>\n"
|
|
43
|
-
xml << "</rubynet>\n"
|
|
44
|
-
@doc = XML::Parser.string(xml).parse
|
|
45
|
-
assert_equal(xml, @doc.to_s)
|
|
46
|
-
ns = @doc.root.search_href(uri)
|
|
47
|
-
assert_instance_of(XML::NS, ns)
|
|
48
|
-
assert_equal(uri, ns.href)
|
|
49
|
-
assert_equal(prefix, ns.prefix)
|
|
50
|
-
end
|
|
51
|
-
|
|
52
|
-
def test_ruby_xml_document_write_sibling()
|
|
53
|
-
xml = "<?xml version=\"1.0\"?>\n<rubynet>\n <pkg/>\n <pkg2/>\n</rubynet>\n"
|
|
54
|
-
child = @doc.root.child = XML::Node.new('pkg')
|
|
55
|
-
assert_instance_of(XML::Node, child)
|
|
56
|
-
child.sibling = XML::Node.new('pkg2')
|
|
57
|
-
assert_equal(xml, @doc.to_s)
|
|
58
|
-
end
|
|
59
|
-
|
|
60
|
-
def test_ruby_xml_document_write_set_doc_property()
|
|
61
|
-
xml = "<?xml version=\"1.0\"?>\n"
|
|
62
|
-
xml << "<rubynet xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n"
|
|
63
|
-
xml << " <pkg/>\n"
|
|
64
|
-
xml << "</rubynet>\n"
|
|
65
|
-
@doc['xmlns:xlink'] = "http://www.w3.org/1999/xlink"
|
|
66
|
-
pkg = @doc.root.child = XML::Node.new('pkg')
|
|
67
|
-
assert_equal(xml, @doc.to_s)
|
|
68
|
-
end
|
|
69
|
-
|
|
70
|
-
def test_ruby_xml_document_write_set_node_base()
|
|
71
|
-
xml = "<?xml version=\"1.0\"?>\n"
|
|
72
|
-
xml << "<rubynet>\n"
|
|
73
|
-
xml << " <pkg xml:base=\"http://www.rubynet.org/\"/>\n"
|
|
74
|
-
xml << "</rubynet>\n"
|
|
75
|
-
pkg = @doc.root.child = XML::Node.new('pkg')
|
|
76
|
-
pkg.base = 'http://www.rubynet.org/'
|
|
77
|
-
assert_equal(xml, @doc.to_s)
|
|
78
|
-
end
|
|
79
|
-
|
|
80
|
-
def test_ruby_xml_document_write_set_node_property()
|
|
81
|
-
xml = "<?xml version=\"1.0\"?>\n"
|
|
82
|
-
xml << "<rubynet xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n"
|
|
83
|
-
xml << " <pkg version=\"1.0\">\n"
|
|
84
|
-
xml << " <meta>\n"
|
|
85
|
-
xml << " <pkgname>libxml</pkgname>\n"
|
|
86
|
-
xml << " </meta>\n"
|
|
87
|
-
xml << " </pkg>\n"
|
|
88
|
-
xml << "</rubynet>\n"
|
|
89
|
-
@doc.root['xmlns:xlink'] = "http://www.w3.org/1999/xlink"
|
|
90
|
-
pkg = @doc.root.child = XML::Node.new('pkg')
|
|
91
|
-
pkg['version'] = '1.0'
|
|
92
|
-
meta = pkg.child = XML::Node.new('meta')
|
|
93
|
-
pkgname = meta.child = XML::Node.new('pkgname', 'libxml')
|
|
94
|
-
assert_equal(xml, @doc.to_s)
|
|
95
|
-
end
|
|
96
|
-
end
|
|
1
|
+
require "libxml"
|
|
2
|
+
require 'test/unit'
|
|
3
|
+
|
|
4
|
+
class TC_XML_Document_Write3 < Test::Unit::TestCase
|
|
5
|
+
def setup()
|
|
6
|
+
@doc = XML::Document.new('1.0')
|
|
7
|
+
assert_instance_of(XML::Document, @doc)
|
|
8
|
+
@doc.root = XML::Node.new('rubynet')
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
def teardown()
|
|
12
|
+
@doc = nil
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def test_ruby_xml_document_write_child()
|
|
16
|
+
xml = "<?xml version=\"1.0\"?>\n<rubynet>\n <pkg/>\n</rubynet>\n"
|
|
17
|
+
@doc.root.child = XML::Node.new('pkg')
|
|
18
|
+
assert_equal(xml, @doc.to_s)
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
def test_ruby_xml_document_write_content_append()
|
|
22
|
+
xml = "<?xml version=\"1.0\"?>\n"
|
|
23
|
+
xml << "<rubynet>\n"
|
|
24
|
+
xml << " <pkg>\n"
|
|
25
|
+
xml << " <meta>\n"
|
|
26
|
+
xml << " <pkgname>libxml</pkgname>\n"
|
|
27
|
+
xml << " </meta>\n"
|
|
28
|
+
xml << " </pkg>\n"
|
|
29
|
+
xml << "</rubynet>\n"
|
|
30
|
+
pkg = @doc.root.child = XML::Node.new('pkg')
|
|
31
|
+
meta = pkg.child = XML::Node.new('meta')
|
|
32
|
+
assert_equal meta, meta << (pkgname = XML::Node.new('pkgname'))
|
|
33
|
+
pkgname << 'libxml'
|
|
34
|
+
assert_equal(xml, @doc.to_s)
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
def test_ruby_xml_document_write_node_search_href()
|
|
38
|
+
prefix = 'xlink'
|
|
39
|
+
uri = 'http://www.rubynet.org'
|
|
40
|
+
xml = "<?xml version=\"1.0\"?>\n"
|
|
41
|
+
xml << "<rubynet xmlns:#{prefix}=\"#{uri}\">\n"
|
|
42
|
+
xml << " <pkg/>\n"
|
|
43
|
+
xml << "</rubynet>\n"
|
|
44
|
+
@doc = XML::Parser.string(xml).parse
|
|
45
|
+
assert_equal(xml, @doc.to_s)
|
|
46
|
+
ns = @doc.root.search_href(uri)
|
|
47
|
+
assert_instance_of(XML::NS, ns)
|
|
48
|
+
assert_equal(uri, ns.href)
|
|
49
|
+
assert_equal(prefix, ns.prefix)
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
def test_ruby_xml_document_write_sibling()
|
|
53
|
+
xml = "<?xml version=\"1.0\"?>\n<rubynet>\n <pkg/>\n <pkg2/>\n</rubynet>\n"
|
|
54
|
+
child = @doc.root.child = XML::Node.new('pkg')
|
|
55
|
+
assert_instance_of(XML::Node, child)
|
|
56
|
+
child.sibling = XML::Node.new('pkg2')
|
|
57
|
+
assert_equal(xml, @doc.to_s)
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
def test_ruby_xml_document_write_set_doc_property()
|
|
61
|
+
xml = "<?xml version=\"1.0\"?>\n"
|
|
62
|
+
xml << "<rubynet xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n"
|
|
63
|
+
xml << " <pkg/>\n"
|
|
64
|
+
xml << "</rubynet>\n"
|
|
65
|
+
@doc['xmlns:xlink'] = "http://www.w3.org/1999/xlink"
|
|
66
|
+
pkg = @doc.root.child = XML::Node.new('pkg')
|
|
67
|
+
assert_equal(xml, @doc.to_s)
|
|
68
|
+
end
|
|
69
|
+
|
|
70
|
+
def test_ruby_xml_document_write_set_node_base()
|
|
71
|
+
xml = "<?xml version=\"1.0\"?>\n"
|
|
72
|
+
xml << "<rubynet>\n"
|
|
73
|
+
xml << " <pkg xml:base=\"http://www.rubynet.org/\"/>\n"
|
|
74
|
+
xml << "</rubynet>\n"
|
|
75
|
+
pkg = @doc.root.child = XML::Node.new('pkg')
|
|
76
|
+
pkg.base = 'http://www.rubynet.org/'
|
|
77
|
+
assert_equal(xml, @doc.to_s)
|
|
78
|
+
end
|
|
79
|
+
|
|
80
|
+
def test_ruby_xml_document_write_set_node_property()
|
|
81
|
+
xml = "<?xml version=\"1.0\"?>\n"
|
|
82
|
+
xml << "<rubynet xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n"
|
|
83
|
+
xml << " <pkg version=\"1.0\">\n"
|
|
84
|
+
xml << " <meta>\n"
|
|
85
|
+
xml << " <pkgname>libxml</pkgname>\n"
|
|
86
|
+
xml << " </meta>\n"
|
|
87
|
+
xml << " </pkg>\n"
|
|
88
|
+
xml << "</rubynet>\n"
|
|
89
|
+
@doc.root['xmlns:xlink'] = "http://www.w3.org/1999/xlink"
|
|
90
|
+
pkg = @doc.root.child = XML::Node.new('pkg')
|
|
91
|
+
pkg['version'] = '1.0'
|
|
92
|
+
meta = pkg.child = XML::Node.new('meta')
|
|
93
|
+
pkgname = meta.child = XML::Node.new('pkgname', 'libxml')
|
|
94
|
+
assert_equal(xml, @doc.to_s)
|
|
95
|
+
end
|
|
96
|
+
end
|
data/test/tc_xml_html_parser.rb
CHANGED
|
@@ -1,63 +1,63 @@
|
|
|
1
|
-
require "libxml"
|
|
2
|
-
require 'test/unit'
|
|
3
|
-
|
|
4
|
-
class TC_XML_HTMLParser < Test::Unit::TestCase
|
|
5
|
-
def setup()
|
|
6
|
-
@xp = XML::HTMLParser.new()
|
|
7
|
-
assert_not_nil(@xp)
|
|
8
|
-
str = '<html><head><meta name=keywords content=nasty></head><body>Hello<br>World</html>'
|
|
9
|
-
@xp.string = str
|
|
10
|
-
assert_equal(str, @xp.string)
|
|
11
|
-
end
|
|
12
|
-
|
|
13
|
-
def teardown()
|
|
14
|
-
@xp = nil
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
def test_libxml_html_parser_parse()
|
|
18
|
-
doc = @xp.parse
|
|
19
|
-
|
|
20
|
-
assert_instance_of XML::Document, doc
|
|
21
|
-
|
|
22
|
-
root = doc.root
|
|
23
|
-
assert_instance_of XML::Node, root
|
|
24
|
-
assert_equal 'html', root.name
|
|
25
|
-
|
|
26
|
-
head = root.child
|
|
27
|
-
assert_instance_of XML::Node, head
|
|
28
|
-
assert_equal 'head', head.name
|
|
29
|
-
|
|
30
|
-
meta = head.child
|
|
31
|
-
assert_instance_of XML::Node, meta
|
|
32
|
-
assert_equal 'meta', meta.name
|
|
33
|
-
assert_equal 'keywords', meta[:name]
|
|
34
|
-
assert_equal 'nasty', meta[:content]
|
|
35
|
-
|
|
36
|
-
body = head.next
|
|
37
|
-
assert_instance_of XML::Node, body
|
|
38
|
-
assert_equal 'body', body.name
|
|
39
|
-
|
|
40
|
-
hello = body.child
|
|
41
|
-
# It appears that some versions of libxml2 add a layer of <p>
|
|
42
|
-
# cant figure our why or how, so this skips it if there
|
|
43
|
-
hello = hello.child if hello.name == "p"
|
|
44
|
-
|
|
45
|
-
assert_instance_of XML::Node, hello
|
|
46
|
-
assert_equal 'Hello', hello.content
|
|
47
|
-
|
|
48
|
-
br = hello.next
|
|
49
|
-
assert_instance_of XML::Node, br
|
|
50
|
-
assert_equal 'br', br.name
|
|
51
|
-
|
|
52
|
-
world = br.next
|
|
53
|
-
assert_instance_of XML::Node, world
|
|
54
|
-
assert_equal 'World', world.content
|
|
55
|
-
end
|
|
56
|
-
|
|
57
|
-
def test_libxml_html_parser_parser_context()
|
|
58
|
-
doc = @xp.parse
|
|
59
|
-
assert_instance_of(XML::Document, doc)
|
|
60
|
-
assert_instance_of(XML::Parser::Context, @xp.parser_context)
|
|
61
|
-
assert @xp.parser_context.html?
|
|
62
|
-
end
|
|
63
|
-
end # TC_XML_HTMLParser
|
|
1
|
+
require "libxml"
|
|
2
|
+
require 'test/unit'
|
|
3
|
+
|
|
4
|
+
class TC_XML_HTMLParser < Test::Unit::TestCase
|
|
5
|
+
def setup()
|
|
6
|
+
@xp = XML::HTMLParser.new()
|
|
7
|
+
assert_not_nil(@xp)
|
|
8
|
+
str = '<html><head><meta name=keywords content=nasty></head><body>Hello<br>World</html>'
|
|
9
|
+
@xp.string = str
|
|
10
|
+
assert_equal(str, @xp.string)
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def teardown()
|
|
14
|
+
@xp = nil
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
def test_libxml_html_parser_parse()
|
|
18
|
+
doc = @xp.parse
|
|
19
|
+
|
|
20
|
+
assert_instance_of XML::Document, doc
|
|
21
|
+
|
|
22
|
+
root = doc.root
|
|
23
|
+
assert_instance_of XML::Node, root
|
|
24
|
+
assert_equal 'html', root.name
|
|
25
|
+
|
|
26
|
+
head = root.child
|
|
27
|
+
assert_instance_of XML::Node, head
|
|
28
|
+
assert_equal 'head', head.name
|
|
29
|
+
|
|
30
|
+
meta = head.child
|
|
31
|
+
assert_instance_of XML::Node, meta
|
|
32
|
+
assert_equal 'meta', meta.name
|
|
33
|
+
assert_equal 'keywords', meta[:name]
|
|
34
|
+
assert_equal 'nasty', meta[:content]
|
|
35
|
+
|
|
36
|
+
body = head.next
|
|
37
|
+
assert_instance_of XML::Node, body
|
|
38
|
+
assert_equal 'body', body.name
|
|
39
|
+
|
|
40
|
+
hello = body.child
|
|
41
|
+
# It appears that some versions of libxml2 add a layer of <p>
|
|
42
|
+
# cant figure our why or how, so this skips it if there
|
|
43
|
+
hello = hello.child if hello.name == "p"
|
|
44
|
+
|
|
45
|
+
assert_instance_of XML::Node, hello
|
|
46
|
+
assert_equal 'Hello', hello.content
|
|
47
|
+
|
|
48
|
+
br = hello.next
|
|
49
|
+
assert_instance_of XML::Node, br
|
|
50
|
+
assert_equal 'br', br.name
|
|
51
|
+
|
|
52
|
+
world = br.next
|
|
53
|
+
assert_instance_of XML::Node, world
|
|
54
|
+
assert_equal 'World', world.content
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
def test_libxml_html_parser_parser_context()
|
|
58
|
+
doc = @xp.parse
|
|
59
|
+
assert_instance_of(XML::Document, doc)
|
|
60
|
+
assert_instance_of(XML::Parser::Context, @xp.parser_context)
|
|
61
|
+
assert @xp.parser_context.html?
|
|
62
|
+
end
|
|
63
|
+
end # TC_XML_HTMLParser
|
data/test/tc_xml_node.rb
CHANGED
|
@@ -1,59 +1,59 @@
|
|
|
1
|
-
require "libxml"
|
|
2
|
-
require 'test/unit'
|
|
3
|
-
|
|
4
|
-
class TC_XML_Node < 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
|
-
@root = doc.root
|
|
12
|
-
assert_instance_of(XML::Node, @root)
|
|
13
|
-
set = doc.find('/ruby_array/fixnum')
|
|
14
|
-
assert_instance_of(XML::XPath::Object, set)
|
|
15
|
-
assert_raise(NoMethodError) {
|
|
16
|
-
xpt = set.xpath
|
|
17
|
-
}
|
|
18
|
-
@nodes = []
|
|
19
|
-
set.each do |n|
|
|
20
|
-
@nodes.push(n)
|
|
21
|
-
end
|
|
22
|
-
end
|
|
23
|
-
|
|
24
|
-
def teardown()
|
|
25
|
-
@nodes = nil
|
|
26
|
-
@root = nil
|
|
27
|
-
end
|
|
28
|
-
|
|
29
|
-
def test_libxml_node_class()
|
|
30
|
-
for n in @nodes
|
|
31
|
-
assert_instance_of(XML::Node, n)
|
|
32
|
-
end
|
|
33
|
-
end
|
|
34
|
-
|
|
35
|
-
def test_libxml_node_child_get()
|
|
36
|
-
assert_instance_of(TrueClass, @root.child?)
|
|
37
|
-
assert_instance_of(XML::Node, @root.child)
|
|
38
|
-
assert_equal('fixnum', @root.child.name)
|
|
39
|
-
end
|
|
40
|
-
|
|
41
|
-
def test_libxml_node_doc()
|
|
42
|
-
for n in @nodes
|
|
43
|
-
assert_instance_of(XML::Document, n.doc) if n.document?
|
|
44
|
-
end
|
|
45
|
-
end
|
|
46
|
-
|
|
47
|
-
def test_libxml_node_type_name()
|
|
48
|
-
assert_equal('element', @nodes[0].node_type_name)
|
|
49
|
-
assert_equal('element', @nodes[1].node_type_name)
|
|
50
|
-
end
|
|
51
|
-
|
|
52
|
-
def test_libxml_node_find()
|
|
53
|
-
set = @root.find('./fixnum').set
|
|
54
|
-
assert_instance_of(XML::Node::Set, set)
|
|
55
|
-
for node in set
|
|
56
|
-
assert_instance_of(XML::Node, node)
|
|
57
|
-
end
|
|
58
|
-
end
|
|
59
|
-
end # TC_XML_Document
|
|
1
|
+
require "libxml"
|
|
2
|
+
require 'test/unit'
|
|
3
|
+
|
|
4
|
+
class TC_XML_Node < 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
|
+
@root = doc.root
|
|
12
|
+
assert_instance_of(XML::Node, @root)
|
|
13
|
+
set = doc.find('/ruby_array/fixnum')
|
|
14
|
+
assert_instance_of(XML::XPath::Object, set)
|
|
15
|
+
assert_raise(NoMethodError) {
|
|
16
|
+
xpt = set.xpath
|
|
17
|
+
}
|
|
18
|
+
@nodes = []
|
|
19
|
+
set.each do |n|
|
|
20
|
+
@nodes.push(n)
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
def teardown()
|
|
25
|
+
@nodes = nil
|
|
26
|
+
@root = nil
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
def test_libxml_node_class()
|
|
30
|
+
for n in @nodes
|
|
31
|
+
assert_instance_of(XML::Node, n)
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
def test_libxml_node_child_get()
|
|
36
|
+
assert_instance_of(TrueClass, @root.child?)
|
|
37
|
+
assert_instance_of(XML::Node, @root.child)
|
|
38
|
+
assert_equal('fixnum', @root.child.name)
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
def test_libxml_node_doc()
|
|
42
|
+
for n in @nodes
|
|
43
|
+
assert_instance_of(XML::Document, n.doc) if n.document?
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
def test_libxml_node_type_name()
|
|
48
|
+
assert_equal('element', @nodes[0].node_type_name)
|
|
49
|
+
assert_equal('element', @nodes[1].node_type_name)
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
def test_libxml_node_find()
|
|
53
|
+
set = @root.find('./fixnum').set
|
|
54
|
+
assert_instance_of(XML::Node::Set, set)
|
|
55
|
+
for node in set
|
|
56
|
+
assert_instance_of(XML::Node, node)
|
|
57
|
+
end
|
|
58
|
+
end
|
|
59
|
+
end # TC_XML_Document
|
data/test/tc_xml_node2.rb
CHANGED
|
@@ -1,25 +1,25 @@
|
|
|
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
|
|
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
CHANGED
|
@@ -1,27 +1,27 @@
|
|
|
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
|
|
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
|