nokogiri 1.5.0.beta.4-java → 1.5.0-java
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of nokogiri might be problematic. Click here for more details.
- data/.gemtest +0 -0
- data/CHANGELOG.ja.rdoc +34 -0
- data/CHANGELOG.rdoc +40 -1
- data/Manifest.txt +11 -2
- data/README.rdoc +1 -1
- data/Rakefile +96 -105
- data/bin/nokogiri +1 -2
- data/ext/java/nokogiri/HtmlDocument.java +1 -31
- data/ext/java/nokogiri/HtmlSaxParserContext.java +1 -1
- data/ext/java/nokogiri/NokogiriService.java +77 -22
- data/ext/java/nokogiri/XmlAttr.java +5 -16
- data/ext/java/nokogiri/XmlCdata.java +4 -11
- data/ext/java/nokogiri/XmlComment.java +5 -5
- data/ext/java/nokogiri/XmlDocument.java +49 -59
- data/ext/java/nokogiri/XmlDocumentFragment.java +14 -8
- data/ext/java/nokogiri/XmlDtd.java +45 -43
- data/ext/java/nokogiri/XmlElement.java +19 -46
- data/ext/java/nokogiri/XmlElementDecl.java +9 -5
- data/ext/java/nokogiri/XmlEntityReference.java +24 -2
- data/ext/java/nokogiri/XmlNamespace.java +89 -34
- data/ext/java/nokogiri/XmlNode.java +31 -52
- data/ext/java/nokogiri/XmlNodeSet.java +42 -86
- data/ext/java/nokogiri/XmlProcessingInstruction.java +15 -19
- data/ext/java/nokogiri/XmlReader.java +40 -43
- data/ext/java/nokogiri/XmlSaxParserContext.java +2 -2
- data/ext/java/nokogiri/XmlSchema.java +14 -9
- data/ext/java/nokogiri/XmlText.java +18 -35
- data/ext/java/nokogiri/XmlXpathContext.java +43 -23
- data/ext/java/nokogiri/XsltStylesheet.java +17 -3
- data/ext/java/nokogiri/internals/HtmlDomParserContext.java +2 -4
- data/ext/java/nokogiri/internals/NokogiriHelpers.java +77 -20
- data/ext/java/nokogiri/internals/NokogiriNamespaceCache.java +13 -17
- data/ext/java/nokogiri/internals/NokogiriNamespaceContext.java +13 -1
- data/ext/java/nokogiri/internals/NokogiriXPathFunction.java +23 -8
- data/ext/java/nokogiri/internals/NokogiriXPathFunctionResolver.java +20 -3
- data/ext/java/nokogiri/internals/NokogiriXPathVariableResolver.java +67 -0
- data/ext/java/nokogiri/internals/NokogiriXsltErrorListener.java +86 -0
- data/ext/java/nokogiri/internals/ParserContext.java +25 -27
- data/ext/java/nokogiri/internals/ReaderNode.java +58 -1
- data/ext/java/nokogiri/internals/SaveContextVisitor.java +567 -0
- data/ext/java/nokogiri/internals/XmlDomParser.java +1 -2
- data/ext/java/nokogiri/internals/XmlDomParserContext.java +6 -0
- data/ext/nokogiri/nokogiri.c +24 -1
- data/ext/nokogiri/xml_io.c +32 -7
- data/ext/nokogiri/xml_node.c +14 -13
- data/ext/nokogiri/xml_sax_parser.c +9 -4
- data/ext/nokogiri/xslt_stylesheet.c +7 -1
- data/lib/nokogiri.rb +3 -22
- data/lib/nokogiri/css.rb +4 -0
- data/lib/nokogiri/html/document.rb +10 -14
- data/lib/nokogiri/nokogiri.jar +0 -0
- data/lib/nokogiri/version.rb +76 -23
- data/lib/nokogiri/xml/builder.rb +7 -0
- data/lib/nokogiri/xml/document.rb +17 -1
- data/lib/nokogiri/xml/document_fragment.rb +14 -0
- data/lib/nokogiri/xml/node.rb +36 -28
- data/lib/nokogiri/xml/node/save_options.rb +17 -1
- data/lib/nokogiri/xml/node_set.rb +7 -0
- data/lib/nokogiri/xml/parse_options.rb +8 -0
- data/lib/nokogiri/xml/reader.rb +6 -6
- data/lib/nokogiri/xml/schema.rb +7 -1
- data/lib/xercesImpl.jar +0 -0
- data/nokogiri_help_responses.md +40 -0
- data/tasks/cross_compile.rb +134 -159
- data/tasks/nokogiri.org.rb +18 -0
- data/tasks/test.rb +1 -1
- data/test/files/encoding.html +82 -0
- data/test/files/encoding.xhtml +84 -0
- data/test/files/metacharset.html +10 -0
- data/test/files/noencoding.html +47 -0
- data/test/helper.rb +2 -0
- data/test/html/test_document.rb +15 -0
- data/test/html/test_document_encoding.rb +13 -0
- data/test/test_memory_leak.rb +20 -0
- data/test/test_reader.rb +22 -0
- data/test/test_xslt_transforms.rb +6 -2
- data/test/xml/node/test_save_options.rb +10 -2
- data/test/xml/test_builder.rb +17 -0
- data/test/xml/test_document.rb +22 -0
- data/test/xml/test_node.rb +19 -1
- data/test/xml/test_node_reparenting.rb +16 -3
- data/test/xml/test_node_set.rb +34 -0
- data/test/xml/test_schema.rb +5 -0
- data/test/xslt/test_exception_handling.rb +37 -0
- metadata +141 -107
- data/deps.rip +0 -5
- data/ext/java/nokogiri/internals/SaveContext.java +0 -288
@@ -0,0 +1,18 @@
|
|
1
|
+
namespace :docs do
|
2
|
+
desc "generate HTML docs for nokogiri.org"
|
3
|
+
task :website do
|
4
|
+
title = "#{HOE.name}-#{HOE.version} Documentation"
|
5
|
+
|
6
|
+
options = []
|
7
|
+
options << "--main=#{HOE.readme_file}"
|
8
|
+
options << '--format=activerecord'
|
9
|
+
options << '--threads=1'
|
10
|
+
options << "--title=#{title.inspect}"
|
11
|
+
|
12
|
+
options += HOE.spec.require_paths
|
13
|
+
options += HOE.spec.extra_rdoc_files
|
14
|
+
require 'rdoc/rdoc'
|
15
|
+
ENV['RAILS_ROOT'] ||= File.expand_path(File.join('..', 'nokogiri_ws'))
|
16
|
+
RDoc::RDoc.new.document options
|
17
|
+
end
|
18
|
+
end
|
data/tasks/test.rb
CHANGED
@@ -73,7 +73,7 @@ namespace :test do
|
|
73
73
|
libxslt = Dir[File.join(MULTI_XML, 'install', 'libxslt*')].first
|
74
74
|
|
75
75
|
directories = ENV['MULTIXML2_DIR'] ? [ENV['MULTIXML2_DIR']] : Dir[File.join(MULTI_XML, 'install', '*')]
|
76
|
-
directories.sort.
|
76
|
+
directories.sort.reverse_each do |xml2_version|
|
77
77
|
next unless xml2_version =~ /libxml2/
|
78
78
|
extopts = "--with-xml2-include=#{xml2_version}/include/libxml2 --with-xml2-lib=#{xml2_version}/lib --with-xslt-dir=#{libxslt} --with-iconv-dir=/usr"
|
79
79
|
cmd = "#{$0} clean test EXTOPTS='#{extopts}' LD_LIBRARY_PATH='#{xml2_version}/lib'"
|
@@ -0,0 +1,82 @@
|
|
1
|
+
<!DOCTYPE HTML>
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<title>����������</title>
|
5
|
+
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS" />
|
6
|
+
</head>
|
7
|
+
<body>
|
8
|
+
<p>���������\�z���B</p>
|
9
|
+
<p>�����������\�z���B</p>
|
10
|
+
<p>�������������\�z���B</p>
|
11
|
+
<p>���������������\�z���B</p>
|
12
|
+
<p>�����������������\�z���B</p>
|
13
|
+
<p>�������������������\�z���B</p>
|
14
|
+
<p>���������������������\�z���B</p>
|
15
|
+
<p>�����������������������\�z���B</p>
|
16
|
+
<p>�������������������������\�z���B</p>
|
17
|
+
<p>���������������������������\�z���B</p>
|
18
|
+
<p>�����������������������������\�z���B</p>
|
19
|
+
<p>�������������������������������\�z���B</p>
|
20
|
+
<p>���������������������������������\�z���B</p>
|
21
|
+
<p>�����������������������������������\�z���B</p>
|
22
|
+
<p>�������������������������������������\�z���B</p>
|
23
|
+
<p>���������������������������������������\�z���B</p>
|
24
|
+
<p>�����������������������������������������\�z���B</p>
|
25
|
+
<p>�������������������������������������������\�z���B</p>
|
26
|
+
<p>���������������������������������������������\�z���B</p>
|
27
|
+
<p>�����������������������������������������������\�z���B</p>
|
28
|
+
<p>�������������������������������������������������\�z���B</p>
|
29
|
+
<p>���������������������������������������������������\�z���B</p>
|
30
|
+
<p>�����������������������������������������������������\�z���B</p>
|
31
|
+
<p>�������������������������������������������������������\�z���B</p>
|
32
|
+
<p>���������������������������������������������������������\�z���B</p>
|
33
|
+
<p>�����������������������������������������������������������\�z���B</p>
|
34
|
+
<p>�������������������������������������������������������������\�z���B</p>
|
35
|
+
<p>���������������������������������������������������������������\�z���B</p>
|
36
|
+
<p>�����������������������������������������������������������������\�z���B</p>
|
37
|
+
<p>�������������������������������������������������������������������\�z���B</p>
|
38
|
+
<p>���������������������������������������������������������������������\�z���B</p>
|
39
|
+
<p>�����������������������������������������������������������������������\�z���B</p>
|
40
|
+
<p>�������������������������������������������������������������������������\�z���B</p>
|
41
|
+
<p>���������������������������������������������������������������������������\�z���B</p>
|
42
|
+
<p>�����������������������������������������������������������������������������\�z���B</p>
|
43
|
+
<p>�������������������������������������������������������������������������������\�z���B</p>
|
44
|
+
<p>���������������������������������������������������������������������������������\�z���B</p>
|
45
|
+
<p>�����������������������������������������������������������������������������������\�z���B</p>
|
46
|
+
<p>�������������������������������������������������������������������������������������\�z���B</p>
|
47
|
+
<p>���������������������������������������������������������������������������������������\�z���B</p>
|
48
|
+
<p>�����������������������������������������������������������������������������������������\�z���B</p>
|
49
|
+
<p>�������������������������������������������������������������������������������������������\�z���B</p>
|
50
|
+
<p>���������������������������������������������������������������������������������������������\�z���B</p>
|
51
|
+
<p>�����������������������������������������������������������������������������������������������\�z���B</p>
|
52
|
+
<p>�������������������������������������������������������������������������������������������������\�z���B</p>
|
53
|
+
<p>���������������������������������������������������������������������������������������������������\�z���B</p>
|
54
|
+
<p>�����������������������������������������������������������������������������������������������������\�z���B</p>
|
55
|
+
<p>�������������������������������������������������������������������������������������������������������\�z���B</p>
|
56
|
+
<p>���������������������������������������������������������������������������������������������������������\�z���B</p>
|
57
|
+
<p>�����������������������������������������������������������������������������������������������������������\�z���B</p>
|
58
|
+
<p>�������������������������������������������������������������������������������������������������������������\�z���B</p>
|
59
|
+
<p>���������������������������������������������������������������������������������������������������������������\�z���B</p>
|
60
|
+
<p>�����������������������������������������������������������������������������������������������������������������\�z���B</p>
|
61
|
+
<p>�������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
62
|
+
<p>���������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
63
|
+
<p>�����������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
64
|
+
<p>�������������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
65
|
+
<p>���������������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
66
|
+
<p>�����������������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
67
|
+
<p>�������������������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
68
|
+
<p>���������������������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
69
|
+
<p>�����������������������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
70
|
+
<p>�������������������������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
71
|
+
<p>���������������������������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
72
|
+
<p>�����������������������������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
73
|
+
<p>�������������������������������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
74
|
+
<p>���������������������������������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
75
|
+
<p>�����������������������������������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
76
|
+
<p>�������������������������������������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
77
|
+
<p>���������������������������������������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
78
|
+
<p>�����������������������������������������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
79
|
+
<p>�������������������������������������������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
80
|
+
<p>���������������������������������������������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
81
|
+
</body>
|
82
|
+
</html>
|
@@ -0,0 +1,84 @@
|
|
1
|
+
<?xml version="1.0" encoding="Shift_JIS"?>
|
2
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
3
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
4
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
|
5
|
+
<head>
|
6
|
+
<title>����������</title>
|
7
|
+
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS" />
|
8
|
+
</head>
|
9
|
+
<body>
|
10
|
+
<p>���������\�z���B</p>
|
11
|
+
<p>�����������\�z���B</p>
|
12
|
+
<p>�������������\�z���B</p>
|
13
|
+
<p>���������������\�z���B</p>
|
14
|
+
<p>�����������������\�z���B</p>
|
15
|
+
<p>�������������������\�z���B</p>
|
16
|
+
<p>���������������������\�z���B</p>
|
17
|
+
<p>�����������������������\�z���B</p>
|
18
|
+
<p>�������������������������\�z���B</p>
|
19
|
+
<p>���������������������������\�z���B</p>
|
20
|
+
<p>�����������������������������\�z���B</p>
|
21
|
+
<p>�������������������������������\�z���B</p>
|
22
|
+
<p>���������������������������������\�z���B</p>
|
23
|
+
<p>�����������������������������������\�z���B</p>
|
24
|
+
<p>�������������������������������������\�z���B</p>
|
25
|
+
<p>���������������������������������������\�z���B</p>
|
26
|
+
<p>�����������������������������������������\�z���B</p>
|
27
|
+
<p>�������������������������������������������\�z���B</p>
|
28
|
+
<p>���������������������������������������������\�z���B</p>
|
29
|
+
<p>�����������������������������������������������\�z���B</p>
|
30
|
+
<p>�������������������������������������������������\�z���B</p>
|
31
|
+
<p>���������������������������������������������������\�z���B</p>
|
32
|
+
<p>�����������������������������������������������������\�z���B</p>
|
33
|
+
<p>�������������������������������������������������������\�z���B</p>
|
34
|
+
<p>���������������������������������������������������������\�z���B</p>
|
35
|
+
<p>�����������������������������������������������������������\�z���B</p>
|
36
|
+
<p>�������������������������������������������������������������\�z���B</p>
|
37
|
+
<p>���������������������������������������������������������������\�z���B</p>
|
38
|
+
<p>�����������������������������������������������������������������\�z���B</p>
|
39
|
+
<p>�������������������������������������������������������������������\�z���B</p>
|
40
|
+
<p>���������������������������������������������������������������������\�z���B</p>
|
41
|
+
<p>�����������������������������������������������������������������������\�z���B</p>
|
42
|
+
<p>�������������������������������������������������������������������������\�z���B</p>
|
43
|
+
<p>���������������������������������������������������������������������������\�z���B</p>
|
44
|
+
<p>�����������������������������������������������������������������������������\�z���B</p>
|
45
|
+
<p>�������������������������������������������������������������������������������\�z���B</p>
|
46
|
+
<p>���������������������������������������������������������������������������������\�z���B</p>
|
47
|
+
<p>�����������������������������������������������������������������������������������\�z���B</p>
|
48
|
+
<p>�������������������������������������������������������������������������������������\�z���B</p>
|
49
|
+
<p>���������������������������������������������������������������������������������������\�z���B</p>
|
50
|
+
<p>�����������������������������������������������������������������������������������������\�z���B</p>
|
51
|
+
<p>�������������������������������������������������������������������������������������������\�z���B</p>
|
52
|
+
<p>���������������������������������������������������������������������������������������������\�z���B</p>
|
53
|
+
<p>�����������������������������������������������������������������������������������������������\�z���B</p>
|
54
|
+
<p>�������������������������������������������������������������������������������������������������\�z���B</p>
|
55
|
+
<p>���������������������������������������������������������������������������������������������������\�z���B</p>
|
56
|
+
<p>�����������������������������������������������������������������������������������������������������\�z���B</p>
|
57
|
+
<p>�������������������������������������������������������������������������������������������������������\�z���B</p>
|
58
|
+
<p>���������������������������������������������������������������������������������������������������������\�z���B</p>
|
59
|
+
<p>�����������������������������������������������������������������������������������������������������������\�z���B</p>
|
60
|
+
<p>�������������������������������������������������������������������������������������������������������������\�z���B</p>
|
61
|
+
<p>���������������������������������������������������������������������������������������������������������������\�z���B</p>
|
62
|
+
<p>�����������������������������������������������������������������������������������������������������������������\�z���B</p>
|
63
|
+
<p>�������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
64
|
+
<p>���������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
65
|
+
<p>�����������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
66
|
+
<p>�������������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
67
|
+
<p>���������������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
68
|
+
<p>�����������������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
69
|
+
<p>�������������������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
70
|
+
<p>���������������������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
71
|
+
<p>�����������������������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
72
|
+
<p>�������������������������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
73
|
+
<p>���������������������������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
74
|
+
<p>�����������������������������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
75
|
+
<p>�������������������������������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
76
|
+
<p>���������������������������������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
77
|
+
<p>�����������������������������������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
78
|
+
<p>�������������������������������������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
79
|
+
<p>���������������������������������������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
80
|
+
<p>�����������������������������������������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
81
|
+
<p>�������������������������������������������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
82
|
+
<p>���������������������������������������������������������������������������������������������������������������������������������������������������������\�z���B</p>
|
83
|
+
</body>
|
84
|
+
</html>
|
@@ -0,0 +1,47 @@
|
|
1
|
+
<!DOCTYPE HTML>
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<title>I have no encoding declaration.</title>
|
5
|
+
</head>
|
6
|
+
<body>
|
7
|
+
<p>I want one.</p>
|
8
|
+
<p>I really want one.</p>
|
9
|
+
<p>I really really want one.</p>
|
10
|
+
<p>I really really really want one.</p>
|
11
|
+
<p>I really really really really want one.</p>
|
12
|
+
<p>I really really really really really want one.</p>
|
13
|
+
<p>I really really really really really really want one.</p>
|
14
|
+
<p>I really really really really really really really want one.</p>
|
15
|
+
<p>I really really really really really really really really want one.</p>
|
16
|
+
<p>I really really really really really really really really really want one.</p>
|
17
|
+
<p>I really really really really really really really really really really want one.</p>
|
18
|
+
<p>I really really really really really really really really really really really want one.</p>
|
19
|
+
<p>I really really really really really really really really really really really really want one.</p>
|
20
|
+
<p>I really really really really really really really really really really really really really want one.</p>
|
21
|
+
<p>I really really really really really really really really really really really really really really want one.</p>
|
22
|
+
<p>I really really really really really really really really really really really really really really really want one.</p>
|
23
|
+
<p>I really really really really really really really really really really really really really really really really want one.</p>
|
24
|
+
<p>I really really really really really really really really really really really really really really really really really want one.</p>
|
25
|
+
<p>I really really really really really really really really really really really really really really really really really really want one.</p>
|
26
|
+
<p>I really really really really really really really really really really really really really really really really really really really want one.</p>
|
27
|
+
<p>I really really really really really really really really really really really really really really really really really really really really want one.</p>
|
28
|
+
<p>I really really really really really really really really really really really really really really really really really really really really really want one.</p>
|
29
|
+
<p>I really really really really really really really really really really really really really really really really really really really really really really want one.</p>
|
30
|
+
<p>I really really really really really really really really really really really really really really really really really really really really really really really want one.</p>
|
31
|
+
<p>I really really really really really really really really really really really really really really really really really really really really really really really really want one.</p>
|
32
|
+
<p>I really really really really really really really really really really really really really really really really really really really really really really really really really want one.</p>
|
33
|
+
<p>I really really really really really really really really really really really really really really really really really really really really really really really really really really want one.</p>
|
34
|
+
<p>I really really really really really really really really really really really really really really really really really really really really really really really really really really really want one.</p>
|
35
|
+
<p>I really really really really really really really really really really really really really really really really really really really really really really really really really really really really want one.</p>
|
36
|
+
<p>I really really really really really really really really really really really really really really really really really really really really really really really really really really really really really want one.</p>
|
37
|
+
<p>I really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really want one.</p>
|
38
|
+
<p>I really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really want one.</p>
|
39
|
+
<p>I really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really want one.</p>
|
40
|
+
<p>I really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really want one.</p>
|
41
|
+
<p>I really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really want one.</p>
|
42
|
+
<p>I really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really want one.</p>
|
43
|
+
<p>I really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really want one.</p>
|
44
|
+
<p>I really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really want one.</p>
|
45
|
+
<p>I really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really want one.</p>
|
46
|
+
</body>
|
47
|
+
</html>
|
data/test/helper.rb
CHANGED
@@ -22,6 +22,8 @@ module Nokogiri
|
|
22
22
|
SHIFT_JIS_HTML = File.join(ASSETS_DIR, 'shift_jis.html')
|
23
23
|
ENCODING_XHTML_FILE = File.join(ASSETS_DIR, 'encoding.xhtml')
|
24
24
|
ENCODING_HTML_FILE = File.join(ASSETS_DIR, 'encoding.html')
|
25
|
+
NOENCODING_FILE = File.join(ASSETS_DIR, 'noencoding.html')
|
26
|
+
METACHARSET_FILE = File.join(ASSETS_DIR, 'metacharset.html')
|
25
27
|
PO_XML_FILE = File.join(ASSETS_DIR, 'po.xml')
|
26
28
|
PO_SCHEMA_FILE = File.join(ASSETS_DIR, 'po.xsd')
|
27
29
|
ADDRESS_SCHEMA_FILE = File.join(ASSETS_DIR, 'address_book.rlx')
|
data/test/html/test_document.rb
CHANGED
@@ -8,6 +8,12 @@ module Nokogiri
|
|
8
8
|
@html = Nokogiri::HTML.parse(File.read(HTML_FILE))
|
9
9
|
end
|
10
10
|
|
11
|
+
def test_nil_css
|
12
|
+
# Behavior is undefined but shouldn't break
|
13
|
+
assert @html.css(nil)
|
14
|
+
assert @html.xpath(nil)
|
15
|
+
end
|
16
|
+
|
11
17
|
def test_exceptions_remove_newlines
|
12
18
|
errors = @html.errors
|
13
19
|
assert errors.length > 0, 'has errors'
|
@@ -226,6 +232,15 @@ eohtml
|
|
226
232
|
}
|
227
233
|
end
|
228
234
|
|
235
|
+
def test_parse_temp_file
|
236
|
+
temp_html_file = Tempfile.new("TEMP_HTML_FILE")
|
237
|
+
File.open(HTML_FILE, 'rb') { |f| temp_html_file.write f.read }
|
238
|
+
temp_html_file.close
|
239
|
+
temp_html_file.open
|
240
|
+
assert_equal Nokogiri::HTML.parse(File.read(HTML_FILE)).xpath('//div/a').length,
|
241
|
+
Nokogiri::HTML.parse(temp_html_file).xpath('//div/a').length
|
242
|
+
end
|
243
|
+
|
229
244
|
def test_to_xhtml
|
230
245
|
assert_match 'XHTML', @html.to_xhtml
|
231
246
|
assert_match 'XHTML', @html.to_xhtml(:encoding => 'UTF-8')
|
@@ -89,6 +89,19 @@ module Nokogiri
|
|
89
89
|
File.open(file, 'rb')
|
90
90
|
end
|
91
91
|
|
92
|
+
def test_document_html_noencoding
|
93
|
+
from_stream = Nokogiri::HTML(binopen(NOENCODING_FILE))
|
94
|
+
from_string = Nokogiri::HTML(binread(NOENCODING_FILE))
|
95
|
+
|
96
|
+
assert_equal from_string.to_s.size, from_stream.to_s.size
|
97
|
+
end
|
98
|
+
|
99
|
+
def test_document_html_charset
|
100
|
+
html = Nokogiri::HTML(binopen(METACHARSET_FILE))
|
101
|
+
assert_equal 'iso-2022-jp', html.encoding
|
102
|
+
assert_equal 'たこ焼き仮面', html.title
|
103
|
+
end
|
104
|
+
|
92
105
|
def test_document_xhtml_enc
|
93
106
|
[ENCODING_XHTML_FILE, ENCODING_HTML_FILE].each { |file|
|
94
107
|
doc_from_string_enc = Nokogiri::HTML(binread(file), nil, 'Shift_JIS')
|
data/test/test_memory_leak.rb
CHANGED
@@ -12,6 +12,26 @@ class TestMemoryLeak < Nokogiri::TestCase
|
|
12
12
|
end
|
13
13
|
end
|
14
14
|
|
15
|
+
class BadIO
|
16
|
+
def read(*args)
|
17
|
+
raise 'hell'
|
18
|
+
end
|
19
|
+
|
20
|
+
def write(*args)
|
21
|
+
raise 'chickens'
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
def test_for_mem_leak_on_io_callbacks
|
26
|
+
io = File.open SNUGGLES_FILE
|
27
|
+
Nokogiri::XML.parse(io)
|
28
|
+
|
29
|
+
(10**10).times do
|
30
|
+
Nokogiri::XML.parse(BadIO.new) rescue nil
|
31
|
+
doc.write BadIO.new rescue nil
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
15
35
|
def test_for_memory_leak
|
16
36
|
begin
|
17
37
|
# we don't use Dike in any tests, but requiring it has side effects
|
data/test/test_reader.rb
CHANGED
@@ -81,6 +81,28 @@ class TestReader < Nokogiri::TestCase
|
|
81
81
|
assert_equal [false, false, false, false, false, false, false],
|
82
82
|
reader.map { |x| x.default? }
|
83
83
|
end
|
84
|
+
|
85
|
+
class ReallyBadIO
|
86
|
+
def read(size)
|
87
|
+
'a' * size ** 10
|
88
|
+
end
|
89
|
+
end
|
90
|
+
|
91
|
+
class ReallyBadIO4Java
|
92
|
+
def read(size=1)
|
93
|
+
'a' * size ** 10
|
94
|
+
end
|
95
|
+
end
|
96
|
+
|
97
|
+
def test_io_that_reads_too_much
|
98
|
+
if Nokogiri.jruby?
|
99
|
+
io = ReallyBadIO4Java.new
|
100
|
+
Nokogiri::XML::Reader(io)
|
101
|
+
else
|
102
|
+
io = ReallyBadIO.new
|
103
|
+
Nokogiri::XML::Reader(io)
|
104
|
+
end
|
105
|
+
end
|
84
106
|
|
85
107
|
def test_in_memory
|
86
108
|
assert Nokogiri::XML::Reader(<<-eoxml)
|
@@ -1,7 +1,6 @@
|
|
1
1
|
require "helper"
|
2
2
|
|
3
3
|
class TestXsltTransforms < Nokogiri::TestCase
|
4
|
-
|
5
4
|
def setup
|
6
5
|
@doc = Nokogiri::XML(File.open(XML_FILE))
|
7
6
|
end
|
@@ -179,11 +178,16 @@ encoding="iso-8859-1" indent="yes"/>
|
|
179
178
|
assert_raises(RuntimeError) { Nokogiri::XSLT.parse(xslt_str) }
|
180
179
|
end
|
181
180
|
|
181
|
+
def test_passing_a_non_document_to_transform
|
182
|
+
xsl = Nokogiri::XSLT('<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"></xsl:stylesheet>')
|
183
|
+
assert_raises(ArgumentError) { xsl.transform("<div></div>") }
|
184
|
+
assert_raises(ArgumentError) { xsl.transform(Nokogiri::HTML("").css("body")) }
|
185
|
+
end
|
186
|
+
|
182
187
|
def check_params result_doc, params
|
183
188
|
result_doc.xpath('/root/params/*').each do |p|
|
184
189
|
assert_equal p.content, params[p.name.intern]
|
185
190
|
end
|
186
191
|
end
|
187
|
-
|
188
192
|
end
|
189
193
|
end
|
@@ -5,14 +5,22 @@ module Nokogiri
|
|
5
5
|
class Node
|
6
6
|
class TestSaveOptions < Nokogiri::TestCase
|
7
7
|
SaveOptions.constants.each do |constant|
|
8
|
-
class_eval
|
8
|
+
class_eval <<-EOEVAL
|
9
9
|
def test_predicate_#{constant.downcase}
|
10
10
|
options = SaveOptions.new(SaveOptions::#{constant})
|
11
11
|
assert options.#{constant.downcase}?
|
12
12
|
|
13
13
|
assert SaveOptions.new.#{constant.downcase}.#{constant.downcase}?
|
14
14
|
end
|
15
|
-
|
15
|
+
EOEVAL
|
16
|
+
end
|
17
|
+
|
18
|
+
def test_default_xml_save_options
|
19
|
+
if Nokogiri.jruby?
|
20
|
+
assert_equal 0, (SaveOptions::DEFAULT_XML & SaveOptions::FORMAT)
|
21
|
+
else
|
22
|
+
assert_equal SaveOptions::FORMAT, (SaveOptions::DEFAULT_XML & SaveOptions::FORMAT)
|
23
|
+
end
|
16
24
|
end
|
17
25
|
end
|
18
26
|
end
|
data/test/xml/test_builder.rb
CHANGED
@@ -3,6 +3,23 @@ require "helper"
|
|
3
3
|
module Nokogiri
|
4
4
|
module XML
|
5
5
|
class TestBuilder < Nokogiri::TestCase
|
6
|
+
def test_attribute_sensitivity
|
7
|
+
xml = Nokogiri::XML::Builder.new { |x|
|
8
|
+
x.tag "hello", "abcDef" => "world"
|
9
|
+
}.to_xml
|
10
|
+
doc = Nokogiri.XML xml
|
11
|
+
assert_equal 'world', doc.root['abcDef']
|
12
|
+
end
|
13
|
+
|
14
|
+
def test_builder_escape
|
15
|
+
xml = Nokogiri::XML::Builder.new { |x|
|
16
|
+
x.condition "value < 1", :attr => "value < 1"
|
17
|
+
}.to_xml
|
18
|
+
doc = Nokogiri.XML xml
|
19
|
+
assert_equal 'value < 1', doc.root['attr']
|
20
|
+
assert_equal 'value < 1', doc.root.content
|
21
|
+
end
|
22
|
+
|
6
23
|
def test_builder_namespace
|
7
24
|
doc = Nokogiri::XML::Builder.new { |xml|
|
8
25
|
xml.a("xmlns:a" => "x") do
|