sdl4r 0.9.6 → 0.9.7
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/CHANGELOG +49 -2
- data/Rakefile +35 -5
- data/TODO +29 -3
- data/doc/classes/SDL4R.html +386 -674
- data/doc/classes/SDL4R/Parser.html +183 -307
- data/doc/classes/SDL4R/ParserTest.html +357 -0
- data/doc/classes/SDL4R/SDL4RTest.html +532 -0
- data/doc/classes/SDL4R/SDLTest.html +77 -0
- data/doc/classes/SDL4R/SdlBinary.html +180 -295
- data/doc/classes/SDL4R/SdlParseError.html +105 -180
- data/doc/classes/SDL4R/SdlTimeSpan.html +628 -939
- data/doc/classes/SDL4R/Tag.html +1236 -2036
- data/doc/classes/SDL4R/TagTest.html +292 -0
- data/doc/created.rid +1 -1
- data/doc/files/CHANGELOG.html +183 -184
- data/doc/files/LICENSE.html +496 -755
- data/doc/files/README.html +399 -623
- data/doc/files/lib/sdl4r/parser/reader_rb.html +53 -106
- data/doc/files/lib/sdl4r/parser/time_span_with_zone_rb.html +53 -106
- data/doc/files/lib/sdl4r/parser/token_rb.html +53 -106
- data/doc/files/lib/sdl4r/parser/tokenizer_rb.html +53 -106
- data/doc/files/lib/sdl4r/parser_rb.html +60 -112
- data/doc/files/lib/sdl4r/sdl4r_rb.html +62 -114
- data/doc/files/lib/sdl4r/sdl_binary_rb.html +53 -106
- data/doc/files/lib/sdl4r/sdl_parse_error_rb.html +53 -106
- data/doc/files/lib/sdl4r/sdl_time_span_rb.html +53 -106
- data/doc/files/lib/sdl4r/tag_rb.html +62 -114
- data/doc/files/lib/sdl4r_rb.html +53 -106
- data/doc/files/test/sdl4r/parser_test_rb.html +63 -0
- data/doc/files/test/sdl4r/sdl4r_test_rb.html +66 -0
- data/doc/files/test/sdl4r/sdl_test_rb.html +63 -0
- data/doc/files/test/sdl4r/tag_test_rb.html +63 -0
- data/doc/fr_class_index.html +19 -32
- data/doc/fr_file_index.html +37 -40
- data/doc/fr_method_index.html +4707 -114
- data/doc/index.html +14 -23
- data/doc/rdoc-style.css +323 -203
- data/lib/sdl4r/parser/reader.rb +26 -19
- data/lib/sdl4r/parser/token.rb +3 -3
- data/lib/sdl4r/parser/tokenizer.rb +93 -98
- data/lib/sdl4r/sdl_parse_error.rb +2 -2
- data/lib/sdl4r/tag.rb +127 -73
- data/test/sdl4r/parser_test.rb +109 -11
- data/test/sdl4r/tag_test.rb +73 -4
- metadata +15 -12
@@ -0,0 +1,292 @@
|
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
2
|
+
<html lang='en'>
|
3
|
+
<head>
|
4
|
+
<title>: SDL4R::TagTest [RDoc: Simple Declarative Language for Ruby]</title>
|
5
|
+
<meta content='text/html; charset=utf-8' http-equiv='Content-Type'>
|
6
|
+
<link href='../../rdoc-style.css' media='screen' rel='stylesheet' type='text/css'>
|
7
|
+
<script type='text/javascript'>
|
8
|
+
//<![CDATA[
|
9
|
+
function popupCode(url) {
|
10
|
+
window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
|
11
|
+
}
|
12
|
+
|
13
|
+
function toggleCode(id) {
|
14
|
+
var code = document.getElementById(id)
|
15
|
+
|
16
|
+
code.style.display = code.style.display != 'block' ? 'block' : 'none'
|
17
|
+
return true
|
18
|
+
}
|
19
|
+
|
20
|
+
// Make codeblocks hidden by default
|
21
|
+
document.writeln('<' + 'style type="text/css">.method .source pre { display: none }<\/style>')
|
22
|
+
//]]>
|
23
|
+
</script>
|
24
|
+
</head>
|
25
|
+
<body class='page'>
|
26
|
+
<div class='class' id='wrapper'>
|
27
|
+
<div class='header'>
|
28
|
+
<h1 class='name'>
|
29
|
+
<span class='type'>Class</span>
|
30
|
+
SDL4R::TagTest
|
31
|
+
</h1>
|
32
|
+
<ol class='paths'>
|
33
|
+
<li>
|
34
|
+
<a href="../../files/test/sdl4r/tag_test_rb.html">test/sdl4r/tag_test.rb</a>
|
35
|
+
</li>
|
36
|
+
</ol>
|
37
|
+
<div class='parent'>
|
38
|
+
Parent:
|
39
|
+
<strong>Test::Unit::TestCase</strong>
|
40
|
+
</div>
|
41
|
+
</div>
|
42
|
+
<div id='content'>
|
43
|
+
<div id='text'>
|
44
|
+
<div id='method-list'>
|
45
|
+
<h2>Methods</h2>
|
46
|
+
<h3>public instance</h3>
|
47
|
+
<ol>
|
48
|
+
<li><a href="#M000123">_test_to_xml_string</a></li>
|
49
|
+
<li><a href="#M000115">test_attributes</a></li>
|
50
|
+
<li><a href="#M000116">test_attributes_with_namespace</a></li>
|
51
|
+
<li><a href="#M000112">test_children</a></li>
|
52
|
+
<li><a href="#M000121">test_children_values</a></li>
|
53
|
+
<li><a href="#M000120">test_eql?</a></li>
|
54
|
+
<li><a href="#M000111">test_initialize</a></li>
|
55
|
+
<li><a href="#M000125">test_omit_null_attributes_xml_option</a></li>
|
56
|
+
<li><a href="#M000117">test_set_attributes</a></li>
|
57
|
+
<li><a href="#M000114">test_stream_operator</a></li>
|
58
|
+
<li><a href="#M000118">test_to_child_hash</a></li>
|
59
|
+
<li><a href="#M000119">test_to_child_string_hash</a></li>
|
60
|
+
<li><a href="#M000122">test_to_xml_string</a></li>
|
61
|
+
<li><a href="#M000124">test_to_xml_string_format</a></li>
|
62
|
+
<li><a href="#M000113">test_values</a></li>
|
63
|
+
<li><a href="#M000126">test_write</a></li>
|
64
|
+
</ol>
|
65
|
+
</div>
|
66
|
+
<div id='section'>
|
67
|
+
<div id='methods'>
|
68
|
+
<h2>Public instance methods</h2>
|
69
|
+
<div class='method public-instance' id='method-M000123'>
|
70
|
+
<a name='M000123'></a>
|
71
|
+
<div class='synopsis'>
|
72
|
+
<span class='name'>_test_to_xml_string</span>
|
73
|
+
<span class='arguments'>(options = {})</span>
|
74
|
+
</div>
|
75
|
+
<div class='source'>
|
76
|
+
<a class='source-toggle' href='#' onclick="toggleCode('M000123-source'); return false">
|
77
|
+
[show source]
|
78
|
+
</a>
|
79
|
+
<pre id='M000123-source'> <span class="ruby-comment cmt"># File test/sdl4r/tag_test.rb, line 495</span>
495: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">_test_to_xml_string</span>(<span class="ruby-identifier">options</span> = {})
496: <span class="ruby-identifier">tag</span> = <span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span> <span class="ruby-value str">"tag1"</span>
497: <span class="ruby-identifier">xml_doc</span> = <span class="ruby-constant">REXML</span><span class="ruby-operator">::</span><span class="ruby-constant">Document</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">tag</span>.<span class="ruby-identifier">to_xml_string</span>(<span class="ruby-identifier">options</span>))
498: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value str">"tag1"</span>, <span class="ruby-identifier">xml_doc</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">name</span>
499: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value str">""</span>, <span class="ruby-identifier">xml_doc</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">namespace</span>
500: 
501: <span class="ruby-identifier">tag</span> = <span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span> <span class="ruby-value str">"ns1"</span>, <span class="ruby-value str">"tag1"</span>
502: <span class="ruby-identifier">ns_options</span> = {<span class="ruby-identifier">:uri_by_namespace</span> =<span class="ruby-operator">></span> {<span class="ruby-value str">"ns1"</span> =<span class="ruby-operator">></span> <span class="ruby-value str">"ns1"</span>}}.<span class="ruby-identifier">merge</span>(<span class="ruby-identifier">options</span>)
503: <span class="ruby-identifier">xml_doc</span> = <span class="ruby-constant">REXML</span><span class="ruby-operator">::</span><span class="ruby-constant">Document</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">tag</span>.<span class="ruby-identifier">to_xml_string</span>(<span class="ruby-identifier">ns_options</span>))
504: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value str">"tag1"</span>, <span class="ruby-identifier">xml_doc</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">name</span>
505: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value str">"ns1"</span>, <span class="ruby-identifier">xml_doc</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">namespace</span>
506: 
507: <span class="ruby-identifier">tag</span> = <span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span> <span class="ruby-value str">"tag1"</span> <span class="ruby-keyword kw">do</span>
508: <span class="ruby-keyword kw">self</span> <span class="ruby-operator"><<</span> <span class="ruby-value">123</span>
509: <span class="ruby-keyword kw">end</span>
510: <span class="ruby-identifier">xml_doc</span> = <span class="ruby-constant">REXML</span><span class="ruby-operator">::</span><span class="ruby-constant">Document</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">tag</span>.<span class="ruby-identifier">to_xml_string</span>(<span class="ruby-identifier">options</span>))
511: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value str">"tag1"</span>, <span class="ruby-identifier">xml_doc</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">name</span>
512: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value str">"123"</span>, <span class="ruby-identifier">xml_doc</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">attribute</span>(<span class="ruby-value str">"_val0"</span>).<span class="ruby-identifier">value</span>
513: 
514: <span class="ruby-identifier">tag</span> = <span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span> <span class="ruby-value str">"tag1"</span> <span class="ruby-keyword kw">do</span>
515: <span class="ruby-identifier">new_child</span> <span class="ruby-value str">"tag2"</span> <span class="ruby-keyword kw">do</span>
516: <span class="ruby-keyword kw">self</span> <span class="ruby-operator"><<</span> {<span class="ruby-value str">"a1"</span> =<span class="ruby-operator">></span> <span class="ruby-value">123</span>}
517: <span class="ruby-keyword kw">end</span>
518: <span class="ruby-identifier">new_child</span> <span class="ruby-value str">"tag3"</span>
519: <span class="ruby-keyword kw">end</span>
520: <span class="ruby-identifier">xml_doc</span> = <span class="ruby-constant">REXML</span><span class="ruby-operator">::</span><span class="ruby-constant">Document</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">tag</span>.<span class="ruby-identifier">to_xml_string</span>(<span class="ruby-identifier">options</span>))
521: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value str">"tag1"</span>, <span class="ruby-identifier">xml_doc</span>.<span class="ruby-identifier">elements</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">name</span>
522: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value str">"tag2"</span>, <span class="ruby-identifier">xml_doc</span>.<span class="ruby-identifier">elements</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">elements</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">name</span>
523: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value str">"tag3"</span>, <span class="ruby-identifier">xml_doc</span>.<span class="ruby-identifier">elements</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">elements</span>[<span class="ruby-value">2</span>].<span class="ruby-identifier">name</span>
524: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value str">"123"</span>, <span class="ruby-identifier">xml_doc</span>.<span class="ruby-identifier">elements</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">elements</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">attribute</span>(<span class="ruby-value str">"a1"</span>).<span class="ruby-identifier">value</span>
525: <span class="ruby-keyword kw">end</span></pre>
|
80
|
+
</div>
|
81
|
+
</div>
|
82
|
+
<div class='method public-instance' id='method-M000115'>
|
83
|
+
<a name='M000115'></a>
|
84
|
+
<div class='synopsis'>
|
85
|
+
<span class='name'>test_attributes</span>
|
86
|
+
<span class='arguments'>()</span>
|
87
|
+
</div>
|
88
|
+
<div class='source'>
|
89
|
+
<a class='source-toggle' href='#' onclick="toggleCode('M000115-source'); return false">
|
90
|
+
[show source]
|
91
|
+
</a>
|
92
|
+
<pre id='M000115-source'> <span class="ruby-comment cmt"># File test/sdl4r/tag_test.rb, line 253</span>
253: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">test_attributes</span>
254: <span class="ruby-identifier">tag</span> = <span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">"tag1"</span>)
255: 
256: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">0</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attributes</span>.<span class="ruby-identifier">size</span>
257: <span class="ruby-identifier">assert</span> <span class="ruby-operator">!</span><span class="ruby-identifier">tag</span>.<span class="ruby-identifier">has_attribute?</span>(<span class="ruby-value str">"a1"</span>)
258: 
259: <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">set_attribute</span>(<span class="ruby-value str">"a1"</span>, <span class="ruby-value">1</span>)
260: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">1</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-value str">"a1"</span>)
261: <span class="ruby-identifier">assert_equal</span>({<span class="ruby-value str">"a1"</span> =<span class="ruby-operator">></span> <span class="ruby-value">1</span>}, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attributes</span>)
262: <span class="ruby-identifier">assert</span> <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">has_attribute?</span>(<span class="ruby-value str">"a1"</span>)
263: <span class="ruby-identifier">assert</span> <span class="ruby-operator">!</span><span class="ruby-identifier">tag</span>.<span class="ruby-identifier">has_attribute?</span>(<span class="ruby-value str">"a2"</span>)
264: 
265: <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">set_attribute</span>(<span class="ruby-value str">"a2"</span>, <span class="ruby-value">2</span>)
266: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">1</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-value str">"a1"</span>)
267: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">1</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-value str">""</span>, <span class="ruby-value str">"a1"</span>)
268: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">2</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-value str">"a2"</span>)
269: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">2</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-value str">""</span>, <span class="ruby-value str">"a2"</span>)
270: <span class="ruby-identifier">assert_equal</span>({<span class="ruby-value str">"a1"</span> =<span class="ruby-operator">></span> <span class="ruby-value">1</span>, <span class="ruby-value str">"a2"</span> =<span class="ruby-operator">></span> <span class="ruby-value">2</span>}, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attributes</span>)
271: 
272: <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">remove_attribute</span>(<span class="ruby-value str">"a3"</span>) <span class="ruby-comment cmt"># nothing should change</span>
273: <span class="ruby-identifier">assert_equal</span>({<span class="ruby-value str">"a1"</span> =<span class="ruby-operator">></span> <span class="ruby-value">1</span>, <span class="ruby-value str">"a2"</span> =<span class="ruby-operator">></span> <span class="ruby-value">2</span>}, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attributes</span>)
274: 
275: <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">remove_attribute</span>(<span class="ruby-value str">"a1"</span>, <span class="ruby-value str">"ns1"</span>) <span class="ruby-comment cmt"># nothing should change</span>
276: <span class="ruby-identifier">assert_equal</span>({<span class="ruby-value str">"a1"</span> =<span class="ruby-operator">></span> <span class="ruby-value">1</span>, <span class="ruby-value str">"a2"</span> =<span class="ruby-operator">></span> <span class="ruby-value">2</span>}, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attributes</span>)
277: 
278: <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">set_attribute</span>(<span class="ruby-value str">"ns1"</span>, <span class="ruby-value str">"a1"</span>, <span class="ruby-value">456</span>)
279: <span class="ruby-identifier">assert</span> <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">has_attribute?</span>(<span class="ruby-value str">"ns1"</span>, <span class="ruby-value str">"a1"</span>)
280: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">456</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-value str">"ns1"</span>, <span class="ruby-value str">"a1"</span>)
281: 
282: <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">remove_attribute</span>(<span class="ruby-value str">"a1"</span>)
283: <span class="ruby-identifier">assert_nil</span> <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-value str">"a1"</span>)
284: <span class="ruby-identifier">assert</span> <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">has_attribute?</span>(<span class="ruby-value str">"ns1"</span>, <span class="ruby-value str">"a1"</span>)
285: <span class="ruby-identifier">assert_equal</span>({<span class="ruby-value str">"a2"</span> =<span class="ruby-operator">></span> <span class="ruby-value">2</span>, <span class="ruby-value str">"ns1:a1"</span> =<span class="ruby-operator">></span> <span class="ruby-value">456</span>}, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attributes</span>)
286: 
287: <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">clear_attributes</span>
288: <span class="ruby-identifier">assert_nil</span> <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-value str">"a2"</span>)
289: <span class="ruby-identifier">assert_equal</span>({}, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attributes</span>)
290: 
291: <span class="ruby-comment cmt"># test empty value</span>
292: <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">set_attribute</span>(<span class="ruby-value str">"a1"</span>, <span class="ruby-value str">""</span>)
293: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value str">""</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-value str">"a1"</span>)
294: <span class="ruby-keyword kw">end</span></pre>
|
93
|
+
</div>
|
94
|
+
</div>
|
95
|
+
<div class='method public-instance' id='method-M000116'>
|
96
|
+
<a name='M000116'></a>
|
97
|
+
<div class='synopsis'>
|
98
|
+
<span class='name'>test_attributes_with_namespace</span>
|
99
|
+
<span class='arguments'>()</span>
|
100
|
+
</div>
|
101
|
+
<div class='source'>
|
102
|
+
<a class='source-toggle' href='#' onclick="toggleCode('M000116-source'); return false">
|
103
|
+
[show source]
|
104
|
+
</a>
|
105
|
+
<pre id='M000116-source'> <span class="ruby-comment cmt"># File test/sdl4r/tag_test.rb, line 296</span>
296: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">test_attributes_with_namespace</span>
297: <span class="ruby-identifier">tag</span> = <span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span> <span class="ruby-value str">"tag1"</span>
298: 
299: <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">set_attribute</span>(<span class="ruby-value str">""</span>, <span class="ruby-value str">"a1"</span>, <span class="ruby-value">1</span>)
300: <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">set_attribute</span>(<span class="ruby-value str">"ns1"</span>, <span class="ruby-value str">"a1"</span>, <span class="ruby-value">2</span>)
301: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">1</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-value str">"a1"</span>)
302: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">2</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-value str">"ns1"</span>, <span class="ruby-value str">"a1"</span>)
303: <span class="ruby-identifier">assert_equal</span> <span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-value str">"ns2"</span>, <span class="ruby-value str">"a1"</span>)
304: 
305: <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">set_attribute</span>(<span class="ruby-value str">"a1"</span>, <span class="ruby-value">3</span>)
306: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">3</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-value str">"a1"</span>)
307: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">3</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-value str">""</span>, <span class="ruby-value str">"a1"</span>)
308: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">2</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-value str">"ns1"</span>, <span class="ruby-value str">"a1"</span>)
309: <span class="ruby-identifier">assert_equal</span> <span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-value str">"ns2"</span>, <span class="ruby-value str">"a1"</span>)
310: 
311: <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">set_attribute</span>(<span class="ruby-value str">"ns2"</span>, <span class="ruby-value str">"a1"</span>, <span class="ruby-value">4</span>)
312: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">3</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-value str">"a1"</span>)
313: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">2</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-value str">"ns1"</span>, <span class="ruby-value str">"a1"</span>)
314: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">4</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-value str">"ns2"</span>, <span class="ruby-value str">"a1"</span>)
315: 
316: <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">set_attribute</span>(<span class="ruby-value str">"ns1"</span>, <span class="ruby-value str">"b1"</span>, <span class="ruby-value">5</span>)
317: <span class="ruby-identifier">assert_equal</span>({<span class="ruby-value str">"a1"</span> =<span class="ruby-operator">></span> <span class="ruby-value">2</span>, <span class="ruby-value str">"b1"</span> =<span class="ruby-operator">></span> <span class="ruby-value">5</span>}, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attributes</span>(<span class="ruby-value str">"ns1"</span>))
318: <span class="ruby-identifier">assert_equal</span>({<span class="ruby-value str">"a1"</span> =<span class="ruby-operator">></span> <span class="ruby-value">4</span>}, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attributes</span>(<span class="ruby-value str">"ns2"</span>))
319: <span class="ruby-identifier">assert_equal</span>({<span class="ruby-value str">"a1"</span> =<span class="ruby-operator">></span> <span class="ruby-value">3</span>}, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attributes</span>(<span class="ruby-value str">""</span>))
320: <span class="ruby-identifier">assert_equal</span>({<span class="ruby-value str">"a1"</span> =<span class="ruby-operator">></span> <span class="ruby-value">3</span>, <span class="ruby-value str">"ns1:a1"</span> =<span class="ruby-operator">></span> <span class="ruby-value">2</span>, <span class="ruby-value str">"ns2:a1"</span> =<span class="ruby-operator">></span> <span class="ruby-value">4</span>, <span class="ruby-value str">"ns1:b1"</span> =<span class="ruby-operator">></span> <span class="ruby-value">5</span>}, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attributes</span>)
321: 
322: <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">remove_attribute</span>(<span class="ruby-value str">"ns1"</span>, <span class="ruby-value str">"a1"</span>)
323: <span class="ruby-identifier">assert_equal</span> <span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-value str">"ns1"</span>, <span class="ruby-value str">"a1"</span>)
324: 
325: <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">clear_attributes</span>(<span class="ruby-value str">""</span>)
326: <span class="ruby-identifier">assert_equal</span>({<span class="ruby-value str">"ns2:a1"</span> =<span class="ruby-operator">></span> <span class="ruby-value">4</span>, <span class="ruby-value str">"ns1:b1"</span> =<span class="ruby-operator">></span> <span class="ruby-value">5</span>}, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attributes</span>)
327: 
328: <span class="ruby-comment cmt"># test bad arguments</span>
329: <span class="ruby-identifier">assert_raise</span>(<span class="ruby-constant">ArgumentError</span>) { <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">set_attribute</span> <span class="ruby-value str">"1"</span>, <span class="ruby-value">123</span> }
330: <span class="ruby-identifier">assert_raise</span>(<span class="ruby-constant">ArgumentError</span>) { <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">set_attribute</span> <span class="ruby-value str">"&o^"</span>, <span class="ruby-value">123</span> }
331: <span class="ruby-identifier">assert_raise</span>(<span class="ruby-constant">ArgumentError</span>) { <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">set_attribute</span> <span class="ruby-value str">"1"</span>, <span class="ruby-value str">"a1"</span>, <span class="ruby-value">123</span> }
332: <span class="ruby-identifier">assert_raise</span>(<span class="ruby-constant">ArgumentError</span>) { <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">set_attribute</span> <span class="ruby-value str">"&o^"</span>, <span class="ruby-value str">"a1"</span>, <span class="ruby-value">123</span> }
333: <span class="ruby-keyword kw">end</span></pre>
|
106
|
+
</div>
|
107
|
+
</div>
|
108
|
+
<div class='method public-instance' id='method-M000112'>
|
109
|
+
<a name='M000112'></a>
|
110
|
+
<div class='synopsis'>
|
111
|
+
<span class='name'>test_children</span>
|
112
|
+
<span class='arguments'>()</span>
|
113
|
+
</div>
|
114
|
+
<div class='source'>
|
115
|
+
<a class='source-toggle' href='#' onclick="toggleCode('M000112-source'); return false">
|
116
|
+
[show source]
|
117
|
+
</a>
|
118
|
+
<pre id='M000112-source'> <span class="ruby-comment cmt"># File test/sdl4r/tag_test.rb, line 90</span>
 90: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">test_children</span>
 91: <span class="ruby-identifier">tag1</span> = <span class="ruby-keyword kw">nil</span>
 92: <span class="ruby-identifier">tag2</span> = <span class="ruby-keyword kw">nil</span>
 93: <span class="ruby-identifier">tag3</span> = <span class="ruby-keyword kw">nil</span>
 94: <span class="ruby-identifier">tag4</span> = <span class="ruby-keyword kw">nil</span>
 95: <span class="ruby-identifier">tag5_1</span> = <span class="ruby-keyword kw">nil</span>
 96: <span class="ruby-identifier">tag5_2</span> = <span class="ruby-keyword kw">nil</span>
 97: 
 98: <span class="ruby-identifier">tag1</span> = <span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">"tag1"</span>) <span class="ruby-keyword kw">do</span>
 99: <span class="ruby-identifier">tag2</span> = <span class="ruby-identifier">new_child</span> <span class="ruby-value str">"ns1"</span>, <span class="ruby-value str">"tag2"</span> <span class="ruby-keyword kw">do</span>
100: <span class="ruby-identifier">tag3</span> = <span class="ruby-identifier">new_child</span> <span class="ruby-value str">"tag3"</span>
101: <span class="ruby-keyword kw">end</span>
102: <span class="ruby-identifier">tag4</span> = <span class="ruby-identifier">new_child</span> <span class="ruby-value str">"tag4"</span> <span class="ruby-keyword kw">do</span>
103: <span class="ruby-identifier">tag5_1</span> = <span class="ruby-identifier">new_child</span> <span class="ruby-value str">"ns1"</span>, <span class="ruby-value str">"tag5"</span>
104: <span class="ruby-identifier">tag5_2</span> = <span class="ruby-identifier">new_child</span> <span class="ruby-value str">"ns2"</span>, <span class="ruby-value str">"tag5"</span>
105: <span class="ruby-keyword kw">end</span>
106: <span class="ruby-keyword kw">end</span>
107: 
108: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">2</span>, <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">child_count</span>
109: <span class="ruby-identifier">assert_equal</span> <span class="ruby-identifier">tag2</span>, <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">child</span>
110: <span class="ruby-identifier">assert_equal</span> <span class="ruby-identifier">tag2</span>, <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">child</span>(<span class="ruby-value str">"tag2"</span>)
111: <span class="ruby-identifier">assert</span> <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">has_child?</span>(<span class="ruby-value str">"tag2"</span>)
112: <span class="ruby-identifier">assert</span> <span class="ruby-operator">!</span><span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">has_child?</span>(<span class="ruby-value str">"tag10"</span>)
113: <span class="ruby-identifier">assert_equal</span> <span class="ruby-identifier">tag2</span>, <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">children</span>[<span class="ruby-value">0</span>]
114: <span class="ruby-identifier">assert_equal</span> <span class="ruby-identifier">tag3</span>, <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">child</span>(<span class="ruby-keyword kw">true</span>, <span class="ruby-value str">"tag3"</span>)
115: <span class="ruby-identifier">assert_equal</span> <span class="ruby-identifier">tag3</span>, <span class="ruby-identifier">tag2</span>.<span class="ruby-identifier">children</span>[<span class="ruby-value">0</span>]
116: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">1</span>, <span class="ruby-identifier">tag2</span>.<span class="ruby-identifier">child_count</span>
117: <span class="ruby-identifier">assert</span> <span class="ruby-identifier">tag2</span>.<span class="ruby-identifier">has_children?</span>
118: <span class="ruby-identifier">assert_equal</span> <span class="ruby-identifier">tag4</span>, <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">child</span>(<span class="ruby-value str">"tag4"</span>)
119: <span class="ruby-identifier">assert_equal</span> <span class="ruby-identifier">tag4</span>, <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">children</span>[<span class="ruby-value">1</span>]
120: <span class="ruby-identifier">assert_equal</span> [<span class="ruby-identifier">tag5_1</span>, <span class="ruby-identifier">tag5_2</span>], <span class="ruby-identifier">tag4</span>.<span class="ruby-identifier">children</span>
121: 
122: <span class="ruby-identifier">assert_equal</span> [<span class="ruby-identifier">tag2</span>, <span class="ruby-identifier">tag4</span>], <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">children</span>(<span class="ruby-keyword kw">false</span>)
123: <span class="ruby-identifier">array</span> = []
124: <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">children</span>(<span class="ruby-keyword kw">false</span>) { <span class="ruby-operator">|</span><span class="ruby-identifier">child</span><span class="ruby-operator">|</span> <span class="ruby-identifier">array</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">child</span> }
125: <span class="ruby-identifier">assert_equal</span> [<span class="ruby-identifier">tag2</span>, <span class="ruby-identifier">tag4</span>], <span class="ruby-identifier">array</span>
126: 
127: <span class="ruby-identifier">assert_equal</span> [<span class="ruby-identifier">tag2</span>, <span class="ruby-identifier">tag3</span>, <span class="ruby-identifier">tag4</span>, <span class="ruby-identifier">tag5_1</span>, <span class="ruby-identifier">tag5_2</span>], <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">children</span>(<span class="ruby-keyword kw">true</span>)
128: <span class="ruby-identifier">array</span> = []
129: <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">children</span>(<span class="ruby-keyword kw">true</span>) { <span class="ruby-operator">|</span><span class="ruby-identifier">child</span><span class="ruby-operator">|</span> <span class="ruby-identifier">array</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">child</span> }
130: <span class="ruby-identifier">assert_equal</span> [<span class="ruby-identifier">tag2</span>, <span class="ruby-identifier">tag3</span>, <span class="ruby-identifier">tag4</span>, <span class="ruby-identifier">tag5_1</span>, <span class="ruby-identifier">tag5_2</span>], <span class="ruby-identifier">array</span>
131: 
132: <span class="ruby-identifier">assert_equal</span> [<span class="ruby-identifier">tag5_1</span>, <span class="ruby-identifier">tag5_2</span>], <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">children</span>(<span class="ruby-keyword kw">true</span>, <span class="ruby-value str">"tag5"</span>)
133: <span class="ruby-identifier">array</span> = []
134: <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">children</span>(<span class="ruby-keyword kw">true</span>, <span class="ruby-value str">"tag5"</span>) { <span class="ruby-operator">|</span><span class="ruby-identifier">child</span><span class="ruby-operator">|</span> <span class="ruby-identifier">array</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">child</span> }
135: <span class="ruby-identifier">assert_equal</span> [<span class="ruby-identifier">tag5_1</span>, <span class="ruby-identifier">tag5_2</span>], <span class="ruby-identifier">array</span>
136: 
137: <span class="ruby-identifier">assert_equal</span> [<span class="ruby-identifier">tag2</span>, <span class="ruby-identifier">tag5_1</span>], <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">children</span>(<span class="ruby-keyword kw">true</span>, <span class="ruby-value str">"ns1"</span>, <span class="ruby-keyword kw">nil</span>)
138: <span class="ruby-identifier">array</span> = []
139: <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">children</span>(<span class="ruby-keyword kw">true</span>, <span class="ruby-value str">"ns1"</span>, <span class="ruby-keyword kw">nil</span>) { <span class="ruby-operator">|</span><span class="ruby-identifier">child</span><span class="ruby-operator">|</span> <span class="ruby-identifier">array</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">child</span> }
140: <span class="ruby-identifier">assert_equal</span> [<span class="ruby-identifier">tag2</span>, <span class="ruby-identifier">tag5_1</span>], <span class="ruby-identifier">array</span>
141: 
142: <span class="ruby-identifier">assert_equal</span> [<span class="ruby-identifier">tag2</span>], <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">children</span>(<span class="ruby-keyword kw">false</span>, <span class="ruby-value str">"ns1"</span>, <span class="ruby-keyword kw">nil</span>)
143: <span class="ruby-identifier">array</span> = []
144: <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">children</span>(<span class="ruby-keyword kw">false</span>, <span class="ruby-value str">"ns1"</span>, <span class="ruby-keyword kw">nil</span>) { <span class="ruby-operator">|</span><span class="ruby-identifier">child</span><span class="ruby-operator">|</span> <span class="ruby-identifier">array</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">child</span> }
145: <span class="ruby-identifier">assert_equal</span> [<span class="ruby-identifier">tag2</span>], <span class="ruby-identifier">array</span>
146: 
147: <span class="ruby-identifier">removed_tag</span> = <span class="ruby-identifier">tag4</span>.<span class="ruby-identifier">remove_child</span>(<span class="ruby-identifier">tag5_1</span>)
148: <span class="ruby-identifier">assert_equal</span> [<span class="ruby-identifier">tag5_2</span>], <span class="ruby-identifier">tag4</span>.<span class="ruby-identifier">children</span>
149: <span class="ruby-identifier">assert</span> <span class="ruby-identifier">removed_tag</span>
150: 
151: <span class="ruby-identifier">removed_tag</span> = <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">remove_child</span>(<span class="ruby-identifier">tag5_1</span>)
152: <span class="ruby-identifier">assert_equal</span> [<span class="ruby-identifier">tag2</span>, <span class="ruby-identifier">tag4</span>], <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">children</span>
153: <span class="ruby-identifier">assert</span> <span class="ruby-operator">!</span><span class="ruby-identifier">removed_tag</span>
154: 
155: <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">clear_children</span>
156: <span class="ruby-identifier">assert_equal</span> <span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">child</span>
157: <span class="ruby-identifier">assert_equal</span> [], <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">children</span>
158: <span class="ruby-keyword kw">end</span></pre>
|
119
|
+
</div>
|
120
|
+
</div>
|
121
|
+
<div class='method public-instance' id='method-M000121'>
|
122
|
+
<a name='M000121'></a>
|
123
|
+
<div class='synopsis'>
|
124
|
+
<span class='name'>test_children_values</span>
|
125
|
+
<span class='arguments'>()</span>
|
126
|
+
</div>
|
127
|
+
<div class='source'>
|
128
|
+
<a class='source-toggle' href='#' onclick="toggleCode('M000121-source'); return false">
|
129
|
+
[show source]
|
130
|
+
</a>
|
131
|
+
<pre id='M000121-source'> <span class="ruby-comment cmt"># File test/sdl4r/tag_test.rb, line 457</span>
457: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">test_children_values</span>
458: <span class="ruby-identifier">root</span> = <span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span> <span class="ruby-value str">"root"</span>
459: 
460: <span class="ruby-identifier">assert_equal</span> [], <span class="ruby-identifier">root</span>.<span class="ruby-identifier">children_values</span>
461: <span class="ruby-identifier">assert_equal</span> [], <span class="ruby-identifier">root</span>.<span class="ruby-identifier">children_values</span>(<span class="ruby-value str">"child1"</span>)
462: 
463: <span class="ruby-identifier">root</span> = <span class="ruby-constant">SDL4R</span><span class="ruby-operator">::</span><span class="ruby-identifier">read</span>(<span class="ruby-value str">"child1 123 length=45.6\nchild2 2010/01/25 \"abc\"\nchild3\nchild4 null\nchild5 null null\n"</span>
464: )
465: 
466: <span class="ruby-identifier">assert_equal</span> [], <span class="ruby-identifier">root</span>.<span class="ruby-identifier">children_values</span>(<span class="ruby-value str">"child0"</span>)
467: <span class="ruby-identifier">assert_equal</span> [<span class="ruby-value">123</span>], <span class="ruby-identifier">root</span>.<span class="ruby-identifier">children_values</span>(<span class="ruby-value str">"child1"</span>)
468: <span class="ruby-identifier">assert_equal</span> [[<span class="ruby-constant">Date</span>.<span class="ruby-identifier">civil</span>(<span class="ruby-value">2010</span>, <span class="ruby-value">01</span>, <span class="ruby-value">25</span>), <span class="ruby-value str">"abc"</span>]], <span class="ruby-identifier">root</span>.<span class="ruby-identifier">children_values</span>(<span class="ruby-value str">"child2"</span>)
469: <span class="ruby-identifier">assert_equal</span> [<span class="ruby-keyword kw">nil</span>], <span class="ruby-identifier">root</span>.<span class="ruby-identifier">children_values</span>(<span class="ruby-value str">"child3"</span>)
470: <span class="ruby-identifier">assert_equal</span> [<span class="ruby-keyword kw">nil</span>], <span class="ruby-identifier">root</span>.<span class="ruby-identifier">children_values</span>(<span class="ruby-value str">"child4"</span>)
471: <span class="ruby-identifier">assert_equal</span> [[<span class="ruby-keyword kw">nil</span>, <span class="ruby-keyword kw">nil</span>]], <span class="ruby-identifier">root</span>.<span class="ruby-identifier">children_values</span>(<span class="ruby-value str">"child5"</span>)
472: <span class="ruby-identifier">assert_equal</span> [
473: <span class="ruby-value">123</span>,
474: [<span class="ruby-constant">Date</span>.<span class="ruby-identifier">civil</span>(<span class="ruby-value">2010</span>, <span class="ruby-value">01</span>, <span class="ruby-value">25</span>), <span class="ruby-value str">"abc"</span>],
475: <span class="ruby-keyword kw">nil</span>,
476: <span class="ruby-keyword kw">nil</span>,
477: [<span class="ruby-keyword kw">nil</span>, <span class="ruby-keyword kw">nil</span>]],
478: <span class="ruby-identifier">root</span>.<span class="ruby-identifier">children_values</span>
479: <span class="ruby-keyword kw">end</span></pre>
|
132
|
+
</div>
|
133
|
+
</div>
|
134
|
+
<div class='method public-instance' id='method-M000120'>
|
135
|
+
<a name='M000120'></a>
|
136
|
+
<div class='synopsis'>
|
137
|
+
<span class='name'>test_eql?</span>
|
138
|
+
<span class='arguments'>()</span>
|
139
|
+
</div>
|
140
|
+
<div class='source'>
|
141
|
+
<a class='source-toggle' href='#' onclick="toggleCode('M000120-source'); return false">
|
142
|
+
[show source]
|
143
|
+
</a>
|
144
|
+
<pre id='M000120-source'> <span class="ruby-comment cmt"># File test/sdl4r/tag_test.rb, line 389</span>
389: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">test_eql?</span>
390: <span class="ruby-identifier">tag1</span> = <span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span> <span class="ruby-value str">"node1"</span>
391: 
392: <span class="ruby-identifier">assert</span> <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">equal?</span>(<span class="ruby-identifier">tag1</span>)
393: <span class="ruby-identifier">assert</span> <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">eql?</span>(<span class="ruby-identifier">tag1</span>)
394: <span class="ruby-identifier">assert</span> <span class="ruby-identifier">tag1</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">tag1</span>
395: <span class="ruby-identifier">assert_equal</span> <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">hash</span>, <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">hash</span>
396: 
397: <span class="ruby-identifier">tag1_bis</span> = <span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span> <span class="ruby-value str">"node1"</span>
398: 
399: <span class="ruby-identifier">assert</span> <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">eql?</span>(<span class="ruby-identifier">tag1_bis</span>)
400: <span class="ruby-identifier">assert</span> <span class="ruby-identifier">tag1</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">tag1_bis</span>
401: <span class="ruby-identifier">assert</span> <span class="ruby-operator">!</span>(<span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">equal?</span>(<span class="ruby-identifier">tag1_bis</span>))
402: <span class="ruby-identifier">assert_equal</span> <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">hash</span>, <span class="ruby-identifier">tag1_bis</span>.<span class="ruby-identifier">hash</span>
403: 
404: <span class="ruby-identifier">tag2</span> = <span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span> <span class="ruby-value str">"node2"</span>
405: <span class="ruby-identifier">assert</span> <span class="ruby-operator">!</span>(<span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">eql?</span>(<span class="ruby-identifier">tag2</span>))
406: <span class="ruby-identifier">assert</span> <span class="ruby-operator">!</span>(<span class="ruby-identifier">tag1</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">tag2</span>)
407: <span class="ruby-identifier">assert</span> <span class="ruby-operator">!</span>(<span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">equal?</span>(<span class="ruby-identifier">tag2</span>))
408: <span class="ruby-identifier">assert_not_equal</span> <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">hash</span>, <span class="ruby-identifier">tag2</span>.<span class="ruby-identifier">hash</span>
409: 
410: <span class="ruby-identifier">tag1</span> = <span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span> <span class="ruby-value str">"node1"</span> <span class="ruby-keyword kw">do</span>
411: <span class="ruby-keyword kw">self</span> <span class="ruby-operator"><<</span> <span class="ruby-value">123</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"abc"</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword kw">nil</span>
412: <span class="ruby-keyword kw">self</span> <span class="ruby-operator"><<</span> {<span class="ruby-value str">"length"</span>=<span class="ruby-operator">></span><span class="ruby-value">45</span>, <span class="ruby-value str">"ns:length"</span>=<span class="ruby-operator">></span><span class="ruby-value">100</span>}
413: <span class="ruby-identifier">new_child</span> <span class="ruby-value str">"child1"</span>
414: <span class="ruby-identifier">new_child</span> <span class="ruby-value str">"child2"</span> <span class="ruby-keyword kw">do</span>
415: <span class="ruby-keyword kw">self</span> <span class="ruby-operator"><<</span> [[<span class="ruby-value">1</span>,<span class="ruby-value">2</span>], [<span class="ruby-value">3</span>,<span class="ruby-value">4</span>]]
416: <span class="ruby-keyword kw">end</span>
417: <span class="ruby-identifier">new_child</span> <span class="ruby-value str">"child3"</span>
418: <span class="ruby-keyword kw">end</span>
419: 
420: <span class="ruby-identifier">assert</span> <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">eql?</span>(<span class="ruby-identifier">tag1</span>)
421: <span class="ruby-identifier">assert</span> <span class="ruby-identifier">tag1</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">tag1</span>
422: <span class="ruby-identifier">assert_equal</span> <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">hash</span>, <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">hash</span>
423: <span class="ruby-identifier">assert</span> <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">equal?</span>(<span class="ruby-identifier">tag1</span>)
424: 
425: <span class="ruby-identifier">tag1_bis</span> = <span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span> <span class="ruby-value str">"node1"</span> <span class="ruby-keyword kw">do</span>
426: <span class="ruby-keyword kw">self</span> <span class="ruby-operator"><<</span> <span class="ruby-value">123</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"abc"</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword kw">nil</span>
427: <span class="ruby-keyword kw">self</span> <span class="ruby-operator"><<</span> {<span class="ruby-value str">"length"</span>=<span class="ruby-operator">></span><span class="ruby-value">45</span>, <span class="ruby-value str">"ns:length"</span>=<span class="ruby-operator">></span><span class="ruby-value">100</span>}
428: <span class="ruby-identifier">new_child</span> <span class="ruby-value str">"child1"</span>
429: <span class="ruby-identifier">new_child</span> <span class="ruby-value str">"child2"</span> <span class="ruby-keyword kw">do</span>
430: <span class="ruby-keyword kw">self</span> <span class="ruby-operator"><<</span> [[<span class="ruby-value">1</span>,<span class="ruby-value">2</span>], [<span class="ruby-value">3</span>,<span class="ruby-value">4</span>]]
431: <span class="ruby-keyword kw">end</span>
432: <span class="ruby-identifier">new_child</span> <span class="ruby-value str">"child3"</span>
433: <span class="ruby-keyword kw">end</span>
434: 
435: <span class="ruby-identifier">assert</span> <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">eql?</span>(<span class="ruby-identifier">tag1_bis</span>)
436: <span class="ruby-identifier">assert</span> <span class="ruby-identifier">tag1</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">tag1_bis</span>
437: <span class="ruby-identifier">assert</span> <span class="ruby-operator">!</span>(<span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">equal?</span>(<span class="ruby-identifier">tag1_bis</span>))
438: <span class="ruby-identifier">assert_equal</span> <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">hash</span>, <span class="ruby-identifier">tag1_bis</span>.<span class="ruby-identifier">hash</span>
439: 
440: <span class="ruby-identifier">tag2</span> = <span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span> <span class="ruby-value str">"node1"</span> <span class="ruby-keyword kw">do</span>
441: <span class="ruby-keyword kw">self</span> <span class="ruby-operator"><<</span> <span class="ruby-value">123</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"abc"</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword kw">nil</span>
442: <span class="ruby-keyword kw">self</span> <span class="ruby-operator"><<</span> {<span class="ruby-value str">"length"</span>=<span class="ruby-operator">></span><span class="ruby-value">45</span>, <span class="ruby-value str">"ns:length"</span>=<span class="ruby-operator">></span><span class="ruby-value">101</span>} <span class="ruby-comment cmt"># the difference is here</span>
443: <span class="ruby-identifier">new_child</span> <span class="ruby-value str">"child1"</span>
444: <span class="ruby-identifier">new_child</span> <span class="ruby-value str">"child2"</span> <span class="ruby-keyword kw">do</span>
445: <span class="ruby-keyword kw">self</span> <span class="ruby-operator"><<</span> [[<span class="ruby-value">1</span>,<span class="ruby-value">2</span>], [<span class="ruby-value">3</span>,<span class="ruby-value">4</span>]]
446: <span class="ruby-keyword kw">end</span>
447: <span class="ruby-identifier">new_child</span> <span class="ruby-value str">"child3"</span>
448: <span class="ruby-keyword kw">end</span>
449: 
450: <span class="ruby-identifier">tag2</span> = <span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span> <span class="ruby-value str">"node2"</span>
451: <span class="ruby-identifier">assert</span> <span class="ruby-operator">!</span>(<span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">eql?</span>(<span class="ruby-identifier">tag2</span>))
452: <span class="ruby-identifier">assert</span> <span class="ruby-operator">!</span>(<span class="ruby-identifier">tag1</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">tag2</span>)
453: <span class="ruby-identifier">assert</span> <span class="ruby-operator">!</span>(<span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">equal?</span>(<span class="ruby-identifier">tag2</span>))
454: <span class="ruby-identifier">assert_not_equal</span> <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">hash</span>, <span class="ruby-identifier">tag2</span>.<span class="ruby-identifier">hash</span>
455: <span class="ruby-keyword kw">end</span></pre>
|
145
|
+
</div>
|
146
|
+
</div>
|
147
|
+
<div class='method public-instance' id='method-M000111'>
|
148
|
+
<a name='M000111'></a>
|
149
|
+
<div class='synopsis'>
|
150
|
+
<span class='name'>test_initialize</span>
|
151
|
+
<span class='arguments'>()</span>
|
152
|
+
</div>
|
153
|
+
<div class='source'>
|
154
|
+
<a class='source-toggle' href='#' onclick="toggleCode('M000111-source'); return false">
|
155
|
+
[show source]
|
156
|
+
</a>
|
157
|
+
<pre id='M000111-source'> <span class="ruby-comment cmt"># File test/sdl4r/tag_test.rb, line 33</span>
33: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">test_initialize</span>
34: <span class="ruby-identifier">tag</span> = <span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">"tag1"</span>)
35: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value str">"tag1"</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">name</span>, <span class="ruby-value str">"name"</span>
36: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value str">""</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">namespace</span>, <span class="ruby-value str">"namespace"</span>
37: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">0</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">child_count</span>
38: <span class="ruby-identifier">assert_equal</span> <span class="ruby-keyword kw">false</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">has_children?</span>
39: <span class="ruby-identifier">assert_equal</span> [], <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">children</span>
40: <span class="ruby-identifier">assert_equal</span> [], <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">values</span>
41: <span class="ruby-identifier">assert_equal</span> <span class="ruby-constant">Hash</span>.<span class="ruby-identifier">new</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attributes</span>
42: 
43: <span class="ruby-identifier">tag</span> = <span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">"ns1"</span>, <span class="ruby-value str">"tag1"</span>)
44: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value str">"tag1"</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">name</span>, <span class="ruby-value str">"name"</span>
45: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value str">"ns1"</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">namespace</span>, <span class="ruby-value str">"namespace"</span>
46: 
47: <span class="ruby-comment cmt"># Check we can't pass garbage to the constructor</span>
48: <span class="ruby-identifier">assert_raise</span> <span class="ruby-constant">ArgumentError</span> <span class="ruby-keyword kw">do</span>
49: <span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value">1</span>)
50: <span class="ruby-keyword kw">end</span>
51: <span class="ruby-identifier">assert_raise</span> <span class="ruby-constant">ArgumentError</span> <span class="ruby-keyword kw">do</span>
52: <span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">"%@!"</span>)
53: <span class="ruby-keyword kw">end</span>
54: <span class="ruby-identifier">assert_raise</span> <span class="ruby-constant">ArgumentError</span> <span class="ruby-keyword kw">do</span>
55: <span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value">1</span>, <span class="ruby-value str">"tag1"</span>)
56: <span class="ruby-keyword kw">end</span>
57: <span class="ruby-identifier">assert_raise</span> <span class="ruby-constant">ArgumentError</span> <span class="ruby-keyword kw">do</span>
58: <span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">"%@!"</span>, <span class="ruby-value str">"tag1"</span>)
59: <span class="ruby-keyword kw">end</span>
60: 
61: <span class="ruby-comment cmt"># check the block idiom</span>
62: <span class="ruby-identifier">tag</span> = <span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">"ns1"</span>, <span class="ruby-value str">"tag1"</span>) <span class="ruby-keyword kw">do</span>
63: <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">name</span> = <span class="ruby-value str">"tag2"</span>
64: <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">namespace</span> = <span class="ruby-value str">"ns2"</span>
65: <span class="ruby-keyword kw">end</span>
66: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value str">"tag2"</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">name</span>
67: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value str">"ns2"</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">namespace</span>
68: 
69: <span class="ruby-comment cmt"># check the block idiom with parameter</span>
70: <span class="ruby-identifier">tag</span> = <span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">"ns1"</span>, <span class="ruby-value str">"tag1"</span>) <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">t</span><span class="ruby-operator">|</span>
71: <span class="ruby-identifier">t</span>.<span class="ruby-identifier">name</span> = <span class="ruby-value str">"tag2"</span>
72: <span class="ruby-identifier">t</span>.<span class="ruby-identifier">namespace</span> = <span class="ruby-value str">"ns2"</span>
73: <span class="ruby-identifier">t</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">name</span> <span class="ruby-comment cmt"># self should be the test instance</span>
74: <span class="ruby-keyword kw">end</span>
75: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value str">"tag2"</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">name</span>
76: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value str">"ns2"</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">namespace</span>
77: <span class="ruby-identifier">assert_equal</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">name</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">value</span>
78: 
79: <span class="ruby-comment cmt"># check the same block+parameter idiom with new_child</span>
80: <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">new_child</span> <span class="ruby-value str">"ns3"</span>, <span class="ruby-value str">"tag3"</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">child</span><span class="ruby-operator">|</span>
81: <span class="ruby-identifier">child</span>.<span class="ruby-identifier">name</span> = <span class="ruby-value str">"tag4"</span>
82: <span class="ruby-identifier">child</span>.<span class="ruby-identifier">namespace</span> = <span class="ruby-value str">"ns4"</span>
83: <span class="ruby-identifier">child</span>.<span class="ruby-identifier">value</span> = <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">name</span>
84: <span class="ruby-keyword kw">end</span>
85: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value str">"tag4"</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">child</span>.<span class="ruby-identifier">name</span>
86: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value str">"ns4"</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">child</span>.<span class="ruby-identifier">namespace</span>
87: <span class="ruby-identifier">assert_equal</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">name</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">child</span>.<span class="ruby-identifier">value</span>
88: <span class="ruby-keyword kw">end</span></pre>
|
158
|
+
</div>
|
159
|
+
</div>
|
160
|
+
<div class='method public-instance' id='method-M000125'>
|
161
|
+
<a name='M000125'></a>
|
162
|
+
<div class='synopsis'>
|
163
|
+
<span class='name'>test_omit_null_attributes_xml_option</span>
|
164
|
+
<span class='arguments'>()</span>
|
165
|
+
</div>
|
166
|
+
<div class='source'>
|
167
|
+
<a class='source-toggle' href='#' onclick="toggleCode('M000125-source'); return false">
|
168
|
+
[show source]
|
169
|
+
</a>
|
170
|
+
<pre id='M000125-source'> <span class="ruby-comment cmt"># File test/sdl4r/tag_test.rb, line 559</span>
559: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">test_omit_null_attributes_xml_option</span>
560: <span class="ruby-identifier">root</span> = <span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span> <span class="ruby-value str">"tag1"</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">tag</span><span class="ruby-operator">|</span>
561: <span class="ruby-identifier">tag</span> <span class="ruby-operator"><<</span> { <span class="ruby-value str">"a1"</span> =<span class="ruby-operator">></span> <span class="ruby-value">123</span>, <span class="ruby-value str">"a2"</span> =<span class="ruby-operator">></span> <span class="ruby-keyword kw">nil</span> }
562: <span class="ruby-keyword kw">end</span>
563: 
564: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value str">"<tag1 a1=\"123\" a2=\"null\"/>"</span>, <span class="ruby-identifier">root</span>.<span class="ruby-identifier">to_xml_string</span>
565: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value str">"<tag1 a1=\"123\"/>"</span>, <span class="ruby-identifier">root</span>.<span class="ruby-identifier">to_xml_string</span>(<span class="ruby-identifier">:omit_null_attributes</span> =<span class="ruby-operator">></span> <span class="ruby-keyword kw">true</span>)
566: <span class="ruby-keyword kw">end</span></pre>
|
171
|
+
</div>
|
172
|
+
</div>
|
173
|
+
<div class='method public-instance' id='method-M000117'>
|
174
|
+
<a name='M000117'></a>
|
175
|
+
<div class='synopsis'>
|
176
|
+
<span class='name'>test_set_attributes</span>
|
177
|
+
<span class='arguments'>()</span>
|
178
|
+
</div>
|
179
|
+
<div class='source'>
|
180
|
+
<a class='source-toggle' href='#' onclick="toggleCode('M000117-source'); return false">
|
181
|
+
[show source]
|
182
|
+
</a>
|
183
|
+
<pre id='M000117-source'> <span class="ruby-comment cmt"># File test/sdl4r/tag_test.rb, line 335</span>
335: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">test_set_attributes</span>
336: <span class="ruby-identifier">tag</span> = <span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span> <span class="ruby-value str">"tag1"</span>
337: 
338: <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">set_attributes</span>({<span class="ruby-value str">"a1"</span> =<span class="ruby-operator">></span> <span class="ruby-value">1</span>})
339: <span class="ruby-identifier">assert</span> <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">has_attribute?</span>(<span class="ruby-value str">"a1"</span>)
340: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">1</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-value str">"a1"</span>)
341: <span class="ruby-identifier">assert_equal</span>({<span class="ruby-value str">"a1"</span> =<span class="ruby-operator">></span> <span class="ruby-value">1</span>}, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attributes</span>)
342: 
343: <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">set_attributes</span>({<span class="ruby-value str">"a2"</span> =<span class="ruby-operator">></span> <span class="ruby-value">2</span>, <span class="ruby-value str">"a3"</span> =<span class="ruby-operator">></span> <span class="ruby-value">3</span>})
344: <span class="ruby-identifier">assert</span> <span class="ruby-operator">!</span><span class="ruby-identifier">tag</span>.<span class="ruby-identifier">has_attribute?</span>(<span class="ruby-value str">"a1"</span>)
345: <span class="ruby-identifier">assert</span> <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">has_attribute?</span>(<span class="ruby-value str">"a2"</span>)
346: <span class="ruby-identifier">assert</span> <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">has_attribute?</span>(<span class="ruby-value str">"a3"</span>)
347: <span class="ruby-identifier">assert_equal</span> <span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-value str">"a1"</span>)
348: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">2</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-value str">"a2"</span>)
349: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">3</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-value str">"a3"</span>)
350: <span class="ruby-identifier">assert_equal</span>({<span class="ruby-value str">"a2"</span> =<span class="ruby-operator">></span> <span class="ruby-value">2</span>, <span class="ruby-value str">"a3"</span> =<span class="ruby-operator">></span> <span class="ruby-value">3</span>}, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attributes</span>)
351: 
352: <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">set_attributes</span>(<span class="ruby-value str">"ns1"</span>, {<span class="ruby-value str">"a2"</span> =<span class="ruby-operator">></span> <span class="ruby-value">12</span>, <span class="ruby-value str">"a3"</span> =<span class="ruby-operator">></span> <span class="ruby-value">13</span>})
353: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">2</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-value str">"a2"</span>)
354: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">3</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-value str">"a3"</span>)
355: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">12</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-value str">"ns1"</span>, <span class="ruby-value str">"a2"</span>)
356: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">13</span>, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-value str">"ns1"</span>, <span class="ruby-value str">"a3"</span>)
357: 
358: <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">set_attributes</span>(<span class="ruby-value str">""</span>, {}) <span class="ruby-comment cmt"># removes all attributes in the default namespace</span>
359: <span class="ruby-identifier">assert_equal</span>({<span class="ruby-value str">"ns1:a2"</span> =<span class="ruby-operator">></span> <span class="ruby-value">12</span>, <span class="ruby-value str">"ns1:a3"</span> =<span class="ruby-operator">></span> <span class="ruby-value">13</span>}, <span class="ruby-identifier">tag</span>.<span class="ruby-identifier">attributes</span>)
360: <span class="ruby-keyword kw">end</span></pre>
|
184
|
+
</div>
|
185
|
+
</div>
|
186
|
+
<div class='method public-instance' id='method-M000114'>
|
187
|
+
<a name='M000114'></a>
|
188
|
+
<div class='synopsis'>
|
189
|
+
<span class='name'>test_stream_operator</span>
|
190
|
+
<span class='arguments'>()</span>
|
191
|
+
</div>
|
192
|
+
<div class='source'>
|
193
|
+
<a class='source-toggle' href='#' onclick="toggleCode('M000114-source'); return false">
|
194
|
+
[show source]
|
195
|
+
</a>
|
196
|
+
<pre id='M000114-source'> <span class="ruby-comment cmt"># File test/sdl4r/tag_test.rb, line 211</span>
211: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">test_stream_operator</span>
212: <span class="ruby-identifier">tag1</span> = <span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span> <span class="ruby-value str">"tag1"</span>
213: 
214: <span class="ruby-identifier">tag1</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">"child"</span>)
215: <span class="ruby-identifier">assert_equal</span> [<span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">"child"</span>)], <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">children</span>
216: 
217: <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">clear_children</span>
218: <span class="ruby-identifier">tag1</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">"tag1"</span>) <span class="ruby-operator"><<</span> <span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">"tag2"</span>) <span class="ruby-comment cmt"># test that all tags are added to tag1</span>
219: <span class="ruby-identifier">assert_equal</span> [<span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">"tag1"</span>), <span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">"tag2"</span>)], <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">children</span>
220: 
221: <span class="ruby-identifier">tag1</span> <span class="ruby-operator"><<</span> <span class="ruby-value">123</span>
222: <span class="ruby-identifier">assert_equal</span> [<span class="ruby-value">123</span>], <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">values</span>
223: <span class="ruby-identifier">tag1</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword kw">nil</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"abc"</span>
224: <span class="ruby-identifier">assert_equal</span> [<span class="ruby-value">123</span>, <span class="ruby-keyword kw">nil</span>, <span class="ruby-value str">"abc"</span>], <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">values</span>
225: 
226: <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">clear_values</span>
227: <span class="ruby-identifier">tag1</span> <span class="ruby-operator"><<</span> [<span class="ruby-value str">"def"</span>, <span class="ruby-value">678</span>, <span class="ruby-keyword kw">nil</span>]
228: <span class="ruby-identifier">assert_equal</span> [<span class="ruby-value str">"def"</span>, <span class="ruby-value">678</span>, <span class="ruby-keyword kw">nil</span>], <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">values</span>
229: 
230: <span class="ruby-identifier">tag1</span> <span class="ruby-operator"><<</span> { <span class="ruby-value str">"length"</span> =<span class="ruby-operator">></span> <span class="ruby-value">13</span> }
231: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">13</span>, <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-value str">"length"</span>)
232: <span class="ruby-identifier">tag1</span> <span class="ruby-operator"><<</span> { <span class="ruby-value str">"side:length"</span> =<span class="ruby-operator">></span> <span class="ruby-value">54</span>, <span class="ruby-value str">"top:length"</span> =<span class="ruby-operator">></span> <span class="ruby-value">67</span>}
233: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">13</span>, <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-value str">"length"</span>)
234: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">54</span>, <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-value str">"side"</span>, <span class="ruby-value str">"length"</span>)
235: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">67</span>, <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">attribute</span>(<span class="ruby-value str">"top"</span>, <span class="ruby-value str">"length"</span>)
236: 
237: <span class="ruby-comment cmt"># Test matrix construction</span>
238: <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">clear_children</span>
239: <span class="ruby-identifier">tag1</span> <span class="ruby-operator"><<</span> [[<span class="ruby-value">1</span>, <span class="ruby-value">2</span>, <span class="ruby-value">3</span>], [<span class="ruby-value">4</span>, <span class="ruby-value">5</span>, <span class="ruby-value">6</span>]]
240: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value str">"content"</span>, <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">children</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">name</span>
241: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value str">"content"</span>, <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">children</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">name</span>
242: <span class="ruby-identifier">assert_equal</span> [<span class="ruby-value">1</span>, <span class="ruby-value">2</span>, <span class="ruby-value">3</span>], <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">children</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">values</span>
243: <span class="ruby-identifier">assert_equal</span> [<span class="ruby-value">4</span>, <span class="ruby-value">5</span>, <span class="ruby-value">6</span>], <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">children</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">values</span>
244: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">2</span>, <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">child_count</span>
245: 
246: <span class="ruby-comment cmt"># Test empty or nil attribute value</span>
247: <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">clear_attributes</span>
248: <span class="ruby-identifier">tag1</span> <span class="ruby-operator"><<</span> { <span class="ruby-value str">"a1"</span> =<span class="ruby-operator">></span> <span class="ruby-value str">""</span> }
249: <span class="ruby-identifier">tag1</span> <span class="ruby-operator"><<</span> { <span class="ruby-value str">"a2"</span> =<span class="ruby-operator">></span> <span class="ruby-keyword kw">nil</span> }
250: <span class="ruby-identifier">assert_equal</span>({ <span class="ruby-value str">"a1"</span> =<span class="ruby-operator">></span> <span class="ruby-value str">""</span>, <span class="ruby-value str">"a2"</span> =<span class="ruby-operator">></span> <span class="ruby-keyword kw">nil</span> }, <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">attributes</span>)
251: <span class="ruby-keyword kw">end</span></pre>
|
197
|
+
</div>
|
198
|
+
</div>
|
199
|
+
<div class='method public-instance' id='method-M000118'>
|
200
|
+
<a name='M000118'></a>
|
201
|
+
<div class='synopsis'>
|
202
|
+
<span class='name'>test_to_child_hash</span>
|
203
|
+
<span class='arguments'>()</span>
|
204
|
+
</div>
|
205
|
+
<div class='source'>
|
206
|
+
<a class='source-toggle' href='#' onclick="toggleCode('M000118-source'); return false">
|
207
|
+
[show source]
|
208
|
+
</a>
|
209
|
+
<pre id='M000118-source'> <span class="ruby-comment cmt"># File test/sdl4r/tag_test.rb, line 362</span>
362: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">test_to_child_hash</span>
363: <span class="ruby-identifier">root</span> = <span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">"root"</span>) <span class="ruby-keyword kw">do</span>
364: (<span class="ruby-identifier">new_child</span> <span class="ruby-value str">"child1"</span>) <span class="ruby-operator"><<</span> <span class="ruby-value str">"abc"</span>
365: <span class="ruby-identifier">new_child</span> <span class="ruby-value str">"child2"</span> <span class="ruby-keyword kw">do</span>
366: <span class="ruby-keyword kw">self</span> <span class="ruby-operator"><<</span> <span class="ruby-value">123</span>
367: <span class="ruby-identifier">new_child</span> <span class="ruby-value str">"child2_1"</span>
368: <span class="ruby-keyword kw">end</span>
369: (<span class="ruby-identifier">new_child</span> <span class="ruby-value str">"child3"</span>) <span class="ruby-operator"><<</span> <span class="ruby-keyword kw">nil</span> <span class="ruby-operator"><<</span> <span class="ruby-value">456</span>
370: <span class="ruby-keyword kw">end</span>
371: 
372: <span class="ruby-identifier">assert_equal</span>({<span class="ruby-value str">"child1"</span> =<span class="ruby-operator">></span> <span class="ruby-value str">"abc"</span>, <span class="ruby-value str">"child2"</span> =<span class="ruby-operator">></span> <span class="ruby-value">123</span>, <span class="ruby-value str">"child3"</span> =<span class="ruby-operator">></span> <span class="ruby-keyword kw">nil</span>}, <span class="ruby-identifier">root</span>.<span class="ruby-identifier">to_child_hash</span>)
373: <span class="ruby-keyword kw">end</span></pre>
|
210
|
+
</div>
|
211
|
+
</div>
|
212
|
+
<div class='method public-instance' id='method-M000119'>
|
213
|
+
<a name='M000119'></a>
|
214
|
+
<div class='synopsis'>
|
215
|
+
<span class='name'>test_to_child_string_hash</span>
|
216
|
+
<span class='arguments'>()</span>
|
217
|
+
</div>
|
218
|
+
<div class='source'>
|
219
|
+
<a class='source-toggle' href='#' onclick="toggleCode('M000119-source'); return false">
|
220
|
+
[show source]
|
221
|
+
</a>
|
222
|
+
<pre id='M000119-source'> <span class="ruby-comment cmt"># File test/sdl4r/tag_test.rb, line 375</span>
375: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">test_to_child_string_hash</span>
376: <span class="ruby-identifier">root</span> = <span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">"root"</span>) <span class="ruby-keyword kw">do</span>
377: (<span class="ruby-identifier">new_child</span> <span class="ruby-value str">"child1"</span>) <span class="ruby-operator"><<</span> <span class="ruby-value str">"abc"</span>
378: <span class="ruby-identifier">new_child</span> <span class="ruby-value str">"child2"</span> <span class="ruby-keyword kw">do</span>
379: <span class="ruby-keyword kw">self</span> <span class="ruby-operator"><<</span> <span class="ruby-value">123</span>
380: <span class="ruby-identifier">new_child</span> <span class="ruby-value str">"child2_1"</span>
381: <span class="ruby-keyword kw">end</span>
382: (<span class="ruby-identifier">new_child</span> <span class="ruby-value str">"child3"</span>) <span class="ruby-operator"><<</span> <span class="ruby-keyword kw">nil</span> <span class="ruby-operator"><<</span> <span class="ruby-value">456</span>
383: <span class="ruby-keyword kw">end</span>
384: 
385: <span class="ruby-identifier">assert_equal</span>(
386: {<span class="ruby-value str">"child1"</span> =<span class="ruby-operator">></span> <span class="ruby-value str">"abc"</span>, <span class="ruby-value str">"child2"</span> =<span class="ruby-operator">></span> <span class="ruby-value str">"123"</span>, <span class="ruby-value str">"child3"</span> =<span class="ruby-operator">></span> <span class="ruby-value str">""</span>}, <span class="ruby-identifier">root</span>.<span class="ruby-identifier">to_child_string_hash</span>)
387: <span class="ruby-keyword kw">end</span></pre>
|
223
|
+
</div>
|
224
|
+
</div>
|
225
|
+
<div class='method public-instance' id='method-M000122'>
|
226
|
+
<a name='M000122'></a>
|
227
|
+
<div class='synopsis'>
|
228
|
+
<span class='name'>test_to_xml_string</span>
|
229
|
+
<span class='arguments'>()</span>
|
230
|
+
</div>
|
231
|
+
<div class='description'>
|
232
|
+
<p>
|
233
|
+
Tests the correctness of the generated XML (not the formatting).
|
234
|
+
</p>
|
235
|
+
</div>
|
236
|
+
<div class='source'>
|
237
|
+
<a class='source-toggle' href='#' onclick="toggleCode('M000122-source'); return false">
|
238
|
+
[show source]
|
239
|
+
</a>
|
240
|
+
<pre id='M000122-source'> <span class="ruby-comment cmt"># File test/sdl4r/tag_test.rb, line 489</span>
489: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">test_to_xml_string</span>
490: <span class="ruby-identifier">_test_to_xml_string</span>()
491: <span class="ruby-identifier">_test_to_xml_string</span>(<span class="ruby-identifier">:indent</span> =<span class="ruby-operator">></span> <span class="ruby-value str">" "</span>)
492: <span class="ruby-identifier">_test_to_xml_string</span>(<span class="ruby-identifier">:indent</span> =<span class="ruby-operator">></span> <span class="ruby-value str">" "</span>, <span class="ruby-identifier">:eol</span> =<span class="ruby-operator">></span> <span class="ruby-value str">"\r\n"</span>)
493: <span class="ruby-keyword kw">end</span></pre>
|
241
|
+
</div>
|
242
|
+
</div>
|
243
|
+
<div class='method public-instance' id='method-M000124'>
|
244
|
+
<a name='M000124'></a>
|
245
|
+
<div class='synopsis'>
|
246
|
+
<span class='name'>test_to_xml_string_format</span>
|
247
|
+
<span class='arguments'>()</span>
|
248
|
+
</div>
|
249
|
+
<div class='source'>
|
250
|
+
<a class='source-toggle' href='#' onclick="toggleCode('M000124-source'); return false">
|
251
|
+
[show source]
|
252
|
+
</a>
|
253
|
+
<pre id='M000124-source'> <span class="ruby-comment cmt"># File test/sdl4r/tag_test.rb, line 527</span>
527: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">test_to_xml_string_format</span>
528: <span class="ruby-identifier">root</span> = <span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span> <span class="ruby-value str">"tag1"</span> <span class="ruby-keyword kw">do</span>
529: <span class="ruby-identifier">new_child</span> <span class="ruby-value str">"tag2"</span>
530: <span class="ruby-identifier">new_child</span> <span class="ruby-value str">"tag3"</span>
531: <span class="ruby-keyword kw">end</span>
532: 
533: <span class="ruby-identifier">assert_equal</span>(
534: <span class="ruby-value str">"<tag1>\n"</span> <span class="ruby-operator">+</span>
535: <span class="ruby-value str">"\t<tag2/>\n"</span> <span class="ruby-operator">+</span>
536: <span class="ruby-value str">"\t<tag3/>\n"</span> <span class="ruby-operator">+</span>
537: <span class="ruby-value str">"</tag1>"</span>,
538: <span class="ruby-identifier">root</span>.<span class="ruby-identifier">to_xml_string</span>)
539: <span class="ruby-identifier">assert_equal</span>(
540: <span class="ruby-value str">"<tag1>\n"</span> <span class="ruby-operator">+</span>
541: <span class="ruby-value str">" <tag2/>\n"</span> <span class="ruby-operator">+</span>
542: <span class="ruby-value str">" <tag3/>\n"</span> <span class="ruby-operator">+</span>
543: <span class="ruby-value str">"</tag1>"</span>,
544: <span class="ruby-identifier">root</span>.<span class="ruby-identifier">to_xml_string</span>(<span class="ruby-identifier">:indent</span> =<span class="ruby-operator">></span> <span class="ruby-value str">" "</span>))
545: <span class="ruby-identifier">assert_equal</span>(
546: <span class="ruby-value str">"--<tag1>\n"</span> <span class="ruby-operator">+</span>
547: <span class="ruby-value str">"-- <tag2/>\n"</span> <span class="ruby-operator">+</span>
548: <span class="ruby-value str">"-- <tag3/>\n"</span> <span class="ruby-operator">+</span>
549: <span class="ruby-value str">"--</tag1>"</span>,
550: <span class="ruby-identifier">root</span>.<span class="ruby-identifier">to_xml_string</span>(<span class="ruby-identifier">:line_prefix</span> =<span class="ruby-operator">></span> <span class="ruby-value str">"--"</span>, <span class="ruby-identifier">:indent</span> =<span class="ruby-operator">></span> <span class="ruby-value str">" "</span>))
551: <span class="ruby-identifier">assert_equal</span>(
552: <span class="ruby-value str">"<tag1>\r\n"</span> <span class="ruby-operator">+</span>
553: <span class="ruby-value str">"\t<tag2/>\r\n"</span> <span class="ruby-operator">+</span>
554: <span class="ruby-value str">"\t<tag3/>\r\n"</span> <span class="ruby-operator">+</span>
555: <span class="ruby-value str">"</tag1>"</span>,
556: <span class="ruby-identifier">root</span>.<span class="ruby-identifier">to_xml_string</span>(<span class="ruby-identifier">:eol</span> =<span class="ruby-operator">></span> <span class="ruby-value str">"\r\n"</span>))
557: <span class="ruby-keyword kw">end</span></pre>
|
254
|
+
</div>
|
255
|
+
</div>
|
256
|
+
<div class='method public-instance' id='method-M000113'>
|
257
|
+
<a name='M000113'></a>
|
258
|
+
<div class='synopsis'>
|
259
|
+
<span class='name'>test_values</span>
|
260
|
+
<span class='arguments'>()</span>
|
261
|
+
</div>
|
262
|
+
<div class='source'>
|
263
|
+
<a class='source-toggle' href='#' onclick="toggleCode('M000113-source'); return false">
|
264
|
+
[show source]
|
265
|
+
</a>
|
266
|
+
<pre id='M000113-source'> <span class="ruby-comment cmt"># File test/sdl4r/tag_test.rb, line 160</span>
160: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">test_values</span>
161: <span class="ruby-identifier">tag1</span> = <span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span> <span class="ruby-value str">"tag1"</span>
162: 
163: <span class="ruby-identifier">assert_equal</span> <span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">value</span>
164: <span class="ruby-identifier">assert_equal</span> [], <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">values</span>
165: 
166: <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">values</span> { <span class="ruby-identifier">fail</span> <span class="ruby-value str">"there should be no value"</span> }
167: 
168: <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">values</span> = [<span class="ruby-value">1</span>]
169: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">1</span>, <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">value</span>
170: <span class="ruby-identifier">assert_equal</span> [<span class="ruby-value">1</span>], <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">values</span>
171: <span class="ruby-identifier">assert</span> <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">has_value?</span>(<span class="ruby-value">1</span>)
172: <span class="ruby-identifier">assert</span> <span class="ruby-operator">!</span><span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">has_value?</span>(<span class="ruby-value">2</span>)
173: 
174: <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">values</span> = [<span class="ruby-value">1</span>, <span class="ruby-value">2</span>]
175: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">1</span>, <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">value</span>
176: <span class="ruby-identifier">assert_equal</span> [<span class="ruby-value">1</span>, <span class="ruby-value">2</span>], <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">values</span>
177: <span class="ruby-identifier">assert</span> <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">has_value?</span>(<span class="ruby-value">1</span>)
178: <span class="ruby-identifier">assert</span> <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">has_value?</span>(<span class="ruby-value">2</span>)
179: <span class="ruby-identifier">assert</span> <span class="ruby-operator">!</span><span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">has_value?</span>(<span class="ruby-value">3</span>)
180: 
181: <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">add_value</span>(<span class="ruby-value">3</span>)
182: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">1</span>, <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">value</span>
183: <span class="ruby-identifier">assert_equal</span> [<span class="ruby-value">1</span>, <span class="ruby-value">2</span>, <span class="ruby-value">3</span>], <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">values</span>
184: <span class="ruby-identifier">assert</span> <span class="ruby-operator">!</span><span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">has_value?</span>(<span class="ruby-keyword kw">nil</span>)
185: 
186: <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">value</span> = <span class="ruby-keyword kw">nil</span>
187: <span class="ruby-identifier">assert_equal</span> <span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">value</span>
188: <span class="ruby-identifier">assert_equal</span> [<span class="ruby-keyword kw">nil</span>, <span class="ruby-value">2</span>, <span class="ruby-value">3</span>], <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">values</span>
189: <span class="ruby-identifier">assert</span> <span class="ruby-operator">!</span><span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">has_value?</span>(<span class="ruby-value">1</span>)
190: <span class="ruby-identifier">assert</span> <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">has_value?</span>(<span class="ruby-keyword kw">nil</span>)
191: 
192: <span class="ruby-identifier">assert</span> <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">remove_value</span>(<span class="ruby-value">2</span>)
193: <span class="ruby-identifier">assert</span> <span class="ruby-operator">!</span><span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">remove_value</span>(<span class="ruby-value">2</span>)
194: <span class="ruby-identifier">assert_equal</span> <span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">value</span>
195: <span class="ruby-identifier">assert_equal</span> [<span class="ruby-keyword kw">nil</span>, <span class="ruby-value">3</span>], <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">values</span>
196: 
197: <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">add_value</span>(<span class="ruby-keyword kw">nil</span>)
198: <span class="ruby-identifier">assert_equal</span> <span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">value</span>
199: <span class="ruby-identifier">assert_equal</span> [<span class="ruby-keyword kw">nil</span>, <span class="ruby-value">3</span>, <span class="ruby-keyword kw">nil</span>], <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">values</span>
200: <span class="ruby-identifier">assert</span> <span class="ruby-operator">!</span><span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">has_value?</span>(<span class="ruby-value">2</span>)
201: <span class="ruby-identifier">assert</span> <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">has_value?</span>(<span class="ruby-keyword kw">nil</span>)
202: 
203: <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">remove_value</span>(<span class="ruby-keyword kw">nil</span>)
204: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value">3</span>, <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">value</span>
205: <span class="ruby-identifier">assert_equal</span> [<span class="ruby-value">3</span>, <span class="ruby-keyword kw">nil</span>], <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">values</span>
206: <span class="ruby-identifier">assert</span> <span class="ruby-operator">!</span><span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">has_value?</span>(<span class="ruby-value">2</span>)
207: <span class="ruby-identifier">assert</span> <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">has_value?</span>(<span class="ruby-value">3</span>)
208: <span class="ruby-identifier">assert</span> <span class="ruby-identifier">tag1</span>.<span class="ruby-identifier">has_value?</span>(<span class="ruby-keyword kw">nil</span>)
209: <span class="ruby-keyword kw">end</span></pre>
|
267
|
+
</div>
|
268
|
+
</div>
|
269
|
+
<div class='method public-instance' id='method-M000126'>
|
270
|
+
<a name='M000126'></a>
|
271
|
+
<div class='synopsis'>
|
272
|
+
<span class='name'>test_write</span>
|
273
|
+
<span class='arguments'>()</span>
|
274
|
+
</div>
|
275
|
+
<div class='source'>
|
276
|
+
<a class='source-toggle' href='#' onclick="toggleCode('M000126-source'); return false">
|
277
|
+
[show source]
|
278
|
+
</a>
|
279
|
+
<pre id='M000126-source'> <span class="ruby-comment cmt"># File test/sdl4r/tag_test.rb, line 568</span>
568: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">test_write</span>
569: <span class="ruby-identifier">root</span> = <span class="ruby-constant">Tag</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">"root"</span>)
570: 
571: <span class="ruby-identifier">output</span> = <span class="ruby-value str">""</span>
572: <span class="ruby-identifier">root</span>.<span class="ruby-identifier">write</span>(<span class="ruby-identifier">output</span>)
573: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value str">""</span>, <span class="ruby-identifier">output</span>
574: 
575: <span class="ruby-identifier">output</span> = <span class="ruby-value str">""</span>
576: <span class="ruby-identifier">root</span>.<span class="ruby-identifier">write</span>(<span class="ruby-identifier">output</span>, <span class="ruby-keyword kw">true</span>)
577: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value str">"root"</span>, <span class="ruby-identifier">output</span>
578: 
579: <span class="ruby-identifier">child1</span> = <span class="ruby-identifier">root</span>.<span class="ruby-identifier">new_child</span> <span class="ruby-value str">"child1"</span>
580: <span class="ruby-identifier">child1</span> <span class="ruby-operator"><<</span> <span class="ruby-value">123</span>
581: 
582: <span class="ruby-identifier">output</span> = <span class="ruby-value str">""</span>
583: <span class="ruby-identifier">root</span>.<span class="ruby-identifier">write</span>(<span class="ruby-identifier">output</span>)
584: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value str">"child1 123"</span>, <span class="ruby-identifier">output</span>
585: 
586: <span class="ruby-identifier">output</span> = <span class="ruby-value str">""</span>
587: <span class="ruby-identifier">root</span>.<span class="ruby-identifier">write</span>(<span class="ruby-identifier">output</span>, <span class="ruby-keyword kw">true</span>)
588: <span class="ruby-identifier">assert_equal</span>(
589: <span class="ruby-value str">"root {\n"</span> <span class="ruby-operator">+</span>
590: <span class="ruby-value str">"\tchild1 123\n"</span> <span class="ruby-operator">+</span>
591: <span class="ruby-value str">"}"</span>,
592: <span class="ruby-identifier">output</span>)
593: 
594: <span class="ruby-identifier">child1</span> = <span class="ruby-identifier">root</span>.<span class="ruby-identifier">new_child</span> <span class="ruby-value str">"child2"</span>
595: <span class="ruby-identifier">child1</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"abc"</span>
596: 
597: <span class="ruby-identifier">output</span> = <span class="ruby-value str">""</span>
598: <span class="ruby-identifier">root</span>.<span class="ruby-identifier">write</span>(<span class="ruby-identifier">output</span>)
599: <span class="ruby-identifier">assert_equal</span> <span class="ruby-value str">"child1 123\nchild2 \"abc\""</span>, <span class="ruby-identifier">output</span>
600: 
601: <span class="ruby-identifier">output</span> = <span class="ruby-value str">""</span>
602: <span class="ruby-identifier">root</span>.<span class="ruby-identifier">write</span>(<span class="ruby-identifier">output</span>, <span class="ruby-keyword kw">true</span>)
603: <span class="ruby-identifier">assert_equal</span>(
604: <span class="ruby-value str">"root {\n"</span> <span class="ruby-operator">+</span>
605: <span class="ruby-value str">"\tchild1 123\n"</span> <span class="ruby-operator">+</span>
606: <span class="ruby-value str">"\tchild2 \"abc\"\n"</span> <span class="ruby-operator">+</span>
607: <span class="ruby-value str">"}"</span>,
608: <span class="ruby-identifier">output</span>)
609: <span class="ruby-keyword kw">end</span></pre>
|
280
|
+
</div>
|
281
|
+
</div>
|
282
|
+
</div>
|
283
|
+
</div>
|
284
|
+
</div>
|
285
|
+
</div>
|
286
|
+
<div id='footer-push'></div>
|
287
|
+
</div>
|
288
|
+
<div id='footer'>
|
289
|
+
<a href="http://github.com/mislav/hanna/tree/master"><strong>Hanna</strong> RDoc template</a>
|
290
|
+
</div>
|
291
|
+
</body>
|
292
|
+
</html>
|
data/doc/created.rid
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
Thu, 26 Aug 2010 23:01:57 +0900
|
data/doc/files/CHANGELOG.html
CHANGED
@@ -1,185 +1,184 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
<
|
7
|
-
<
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
<
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
<
|
88
|
-
|
89
|
-
</
|
90
|
-
|
91
|
-
|
92
|
-
<
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
</
|
98
|
-
<
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
<
|
104
|
-
|
105
|
-
|
106
|
-
</li>
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
<li>
|
112
|
-
|
113
|
-
</li>
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
<
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
</
|
133
|
-
|
134
|
-
<
|
135
|
-
<
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
</
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
2
|
+
<html lang='en'>
|
3
|
+
<head>
|
4
|
+
<title>File: CHANGELOG [RDoc: Simple Declarative Language for Ruby]</title>
|
5
|
+
<meta content='text/html; charset=utf-8' http-equiv='Content-Type'>
|
6
|
+
<link href='../rdoc-style.css' media='screen' rel='stylesheet' type='text/css'>
|
7
|
+
<script type='text/javascript'>
|
8
|
+
//<![CDATA[
|
9
|
+
function popupCode(url) {
|
10
|
+
window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
|
11
|
+
}
|
12
|
+
|
13
|
+
function toggleCode(id) {
|
14
|
+
var code = document.getElementById(id)
|
15
|
+
|
16
|
+
code.style.display = code.style.display != 'block' ? 'block' : 'none'
|
17
|
+
return true
|
18
|
+
}
|
19
|
+
|
20
|
+
// Make codeblocks hidden by default
|
21
|
+
document.writeln('<' + 'style type="text/css">.method .source pre { display: none }<\/style>')
|
22
|
+
//]]>
|
23
|
+
</script>
|
24
|
+
</head>
|
25
|
+
<body class='page'>
|
26
|
+
<div class='file' id='wrapper'>
|
27
|
+
<div class='header'>
|
28
|
+
<h1 class='name'>CHANGELOG</h1>
|
29
|
+
<div class='paths'>
|
30
|
+
CHANGELOG
|
31
|
+
</div>
|
32
|
+
<div class='last-update'>
|
33
|
+
Last Update:
|
34
|
+
<span class='datetime'>2010-08-26 22:49:12 +0900</span>
|
35
|
+
</div>
|
36
|
+
</div>
|
37
|
+
<div id='content'>
|
38
|
+
<div id='text'>
|
39
|
+
<div id='description'>
|
40
|
+
<h2>v0.9.8 (建設中)</h2>
|
41
|
+
<h2>v0.9.7 (26-auf-2010)</h2>
|
42
|
+
<h3>Major changes:</h3>
|
43
|
+
<ul>
|
44
|
+
<li>It could prove a hassle to use the block idiom of Tag.new or Tag.new_child
|
45
|
+
when handling another set of data. Therefore, if the given block takes a
|
46
|
+
(not-optional) parameter, the context remains the context of the calling
|
47
|
+
code.
|
48
|
+
|
49
|
+
<pre>class Elephant

 def initialize
 @weight = 1000
 end

 def to_sdl
 SDL4R::Tag.new("elephant") do |tag|
 tag.set_attribute("weight", @weight)
 tag << "I love pink ones."
 end
 end

end

puts Elephant.new.to_sdl.to_s # ==> elephant "I love pink ones." weight=1000</pre>
|
50
|
+
</li>
|
51
|
+
<li>Tag.to_xml_string() has been refactor to take an option Hash (backward
|
52
|
+
incompatible):
|
53
|
+
|
54
|
+
<dl>
|
55
|
+
<dt>:line_prefix</dt><dd>a text prefixing each line (default: “”)
|
56
|
+
|
57
|
+
</dd>
|
58
|
+
<dt>:uri_by_namespace</dt><dd>a Hash giving the URIs for the namespaces
|
59
|
+
|
60
|
+
</dd>
|
61
|
+
<dt>:indent</dt><dd>text specifying one indentation (default: “t“)
|
62
|
+
|
63
|
+
</dd>
|
64
|
+
<dt>:eol</dt><dd>end of line expression (default: “n“)
|
65
|
+
|
66
|
+
</dd>
|
67
|
+
<dt>:omit_null_attributes</dt><dd>if true, null/nil attributes are not exported (default: false). Otherwise,
|
68
|
+
they are exported as follows:
|
69
|
+
|
70
|
+
<pre>tag attr="null"</pre>
|
71
|
+
</dd>
|
72
|
+
</dl>
|
73
|
+
</li>
|
74
|
+
<li>Fixed the parsing of line continuations with anti-slashes.
|
75
|
+
|
76
|
+
</li>
|
77
|
+
<li>Fixed the parsing of double-quoted strings. It is better at detecting badly
|
78
|
+
formed strings, now.
|
79
|
+
|
80
|
+
</li>
|
81
|
+
<li>Fixed the reporting of lines and columns in errors. Although the column
|
82
|
+
might be slightly off sometimes, the line should be correct.
|
83
|
+
|
84
|
+
</li>
|
85
|
+
</ul>
|
86
|
+
<h3>Minor changes:</h3>
|
87
|
+
<ul>
|
88
|
+
<li>The RDoc is now generated with the template <a
|
89
|
+
href="http://github.com/mislav/hanna/tree/master">Hanna</a>.
|
90
|
+
|
91
|
+
</li>
|
92
|
+
<li>Tag.<< now behaves with Enumerables (except Strings) as it does with
|
93
|
+
Arrays.
|
94
|
+
|
95
|
+
</li>
|
96
|
+
</ul>
|
97
|
+
<h2>v0.9.6 (10-aug-2010)</h2>
|
98
|
+
<h3>Major changes:</h3>
|
99
|
+
<ul>
|
100
|
+
<li>Tag.set_attribute(): fixed as it failed if the value was nil.
|
101
|
+
|
102
|
+
</li>
|
103
|
+
<li>Tag.write(): now returns the given output (especially necessary if a String
|
104
|
+
was given).
|
105
|
+
|
106
|
+
</li>
|
107
|
+
<li>Tag.write(): fixed as it failed when writing children without including the
|
108
|
+
root Tag.
|
109
|
+
|
110
|
+
</li>
|
111
|
+
<li>Tag.write(): it is now possible to give a StringIO as an output
|
112
|
+
|
113
|
+
</li>
|
114
|
+
</ul>
|
115
|
+
<h2>v0.9.5 (8-aug-2010)</h2>
|
116
|
+
<h3>Major changes:</h3>
|
117
|
+
<ul>
|
118
|
+
<li>Fixes in order to make <a href="../classes/SDL4R.html">SDL4R</a> work in
|
119
|
+
Ruby 1.9 (mainly concerning encodings and dates).
|
120
|
+
|
121
|
+
</li>
|
122
|
+
<li>Commented out debug code (writing to files) inside sdl4r_test.rb.
|
123
|
+
|
124
|
+
</li>
|
125
|
+
</ul>
|
126
|
+
<h3>Minor changes:</h3>
|
127
|
+
<ul>
|
128
|
+
<li>General & contact info in the <a href="README.html">README</a>
|
129
|
+
|
130
|
+
</li>
|
131
|
+
</ul>
|
132
|
+
<h2>v0.9.4 (6-aug-2010)</h2>
|
133
|
+
<h3>Major changes:</h3>
|
134
|
+
<ul>
|
135
|
+
<li>The use of BigDecimal (standard) has been preferred to Flt::DecNum.
|
136
|
+
|
137
|
+
</li>
|
138
|
+
<li>“sdl4r/sdl.rb“ has been renamed to “sdl4r/sdl4r.rb“
|
139
|
+
|
140
|
+
</li>
|
141
|
+
<li>A sdl4r.rb has been added so that users can actually write (as the
|
142
|
+
documentation pretended):
|
143
|
+
|
144
|
+
<pre>require 'sdl4r'</pre>
|
145
|
+
</li>
|
146
|
+
<li><a href="../classes/SDL4R.html#M000004">SDL4R#coerce_or_fail</a> has been
|
147
|
+
implemented, which means that random objects cannot be added to a Tag as
|
148
|
+
before. Rational instances are coerced using Rational#to_f.
|
149
|
+
|
150
|
+
</li>
|
151
|
+
<li>Added usual time methods to SdlTimeSpan: day(), hour(), min(), sec(),
|
152
|
+
usec()
|
153
|
+
|
154
|
+
</li>
|
155
|
+
</ul>
|
156
|
+
<h2>v0.9.3</h2>
|
157
|
+
<h3>Major changes</h3>
|
158
|
+
<ul>
|
159
|
+
<li>Tag: any method that use to take namespace/name parameters now follows the
|
160
|
+
natural order “namespace” and then “name”:
|
161
|
+
|
162
|
+
<pre>Tag.new "ns1", "tag1"</pre>
|
163
|
+
<p>
|
164
|
+
WARNING: this was the contrary before!!! Also, the “recursive”
|
165
|
+
parameter should always be at the first place now.
|
166
|
+
</p>
|
167
|
+
</li>
|
168
|
+
<li>It is now possible to override SDL4R::new_date_time in order to create Time
|
169
|
+
instances when parsing rather than DateTime instances.
|
170
|
+
|
171
|
+
</li>
|
172
|
+
</ul>
|
173
|
+
</div>
|
174
|
+
<div id='section'>
|
175
|
+
</div>
|
176
|
+
</div>
|
177
|
+
</div>
|
178
|
+
<div id='footer-push'></div>
|
154
179
|
</div>
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
</div>
|
161
|
-
|
162
|
-
|
163
|
-
<!-- if includes -->
|
164
|
-
|
165
|
-
<div id="section">
|
166
|
-
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
|
173
|
-
|
174
|
-
<!-- if method_list -->
|
175
|
-
|
176
|
-
|
177
|
-
</div>
|
178
|
-
|
179
|
-
|
180
|
-
<div id="validator-badges">
|
181
|
-
<p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
|
182
|
-
</div>
|
183
|
-
|
184
|
-
</body>
|
185
|
-
</html>
|
180
|
+
<div id='footer'>
|
181
|
+
<a href="http://github.com/mislav/hanna/tree/master"><strong>Hanna</strong> RDoc template</a>
|
182
|
+
</div>
|
183
|
+
</body>
|
184
|
+
</html>
|