yob-roxml 3.1.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (102) hide show
  1. data/.gitignore +7 -0
  2. data/.gitmodules +3 -0
  3. data/History.txt +354 -0
  4. data/LICENSE +20 -0
  5. data/README.rdoc +195 -0
  6. data/Rakefile +117 -0
  7. data/TODO +37 -0
  8. data/VERSION +1 -0
  9. data/examples/amazon.rb +35 -0
  10. data/examples/current_weather.rb +27 -0
  11. data/examples/dashed_elements.rb +20 -0
  12. data/examples/library.rb +40 -0
  13. data/examples/posts.rb +27 -0
  14. data/examples/rails.rb +70 -0
  15. data/examples/twitter.rb +37 -0
  16. data/examples/xml/active_record.xml +70 -0
  17. data/examples/xml/amazon.xml +133 -0
  18. data/examples/xml/current_weather.xml +89 -0
  19. data/examples/xml/dashed_elements.xml +52 -0
  20. data/examples/xml/posts.xml +23 -0
  21. data/examples/xml/twitter.xml +422 -0
  22. data/lib/roxml.rb +556 -0
  23. data/lib/roxml/definition.rb +238 -0
  24. data/lib/roxml/hash_definition.rb +25 -0
  25. data/lib/roxml/xml.rb +40 -0
  26. data/lib/roxml/xml/parsers/libxml.rb +85 -0
  27. data/lib/roxml/xml/parsers/nokogiri.rb +82 -0
  28. data/lib/roxml/xml/references.rb +322 -0
  29. data/roxml.gemspec +206 -0
  30. data/spec/definition_spec.rb +494 -0
  31. data/spec/examples/active_record_spec.rb +40 -0
  32. data/spec/examples/amazon_spec.rb +54 -0
  33. data/spec/examples/current_weather_spec.rb +37 -0
  34. data/spec/examples/dashed_elements_spec.rb +20 -0
  35. data/spec/examples/library_spec.rb +46 -0
  36. data/spec/examples/post_spec.rb +24 -0
  37. data/spec/examples/twitter_spec.rb +32 -0
  38. data/spec/roxml_spec.rb +372 -0
  39. data/spec/shared_specs.rb +15 -0
  40. data/spec/spec.opts +1 -0
  41. data/spec/spec_helper.rb +14 -0
  42. data/spec/support/libxml.rb +3 -0
  43. data/spec/support/nokogiri.rb +3 -0
  44. data/spec/xml/array_spec.rb +36 -0
  45. data/spec/xml/attributes_spec.rb +71 -0
  46. data/spec/xml/encoding_spec.rb +52 -0
  47. data/spec/xml/namespace_spec.rb +270 -0
  48. data/spec/xml/namespaces_spec.rb +67 -0
  49. data/spec/xml/object_spec.rb +82 -0
  50. data/spec/xml/parser_spec.rb +21 -0
  51. data/spec/xml/text_spec.rb +71 -0
  52. data/test/fixtures/book_malformed.xml +5 -0
  53. data/test/fixtures/book_pair.xml +8 -0
  54. data/test/fixtures/book_text_with_attribute.xml +5 -0
  55. data/test/fixtures/book_valid.xml +5 -0
  56. data/test/fixtures/book_with_authors.xml +7 -0
  57. data/test/fixtures/book_with_contributions.xml +9 -0
  58. data/test/fixtures/book_with_contributors.xml +7 -0
  59. data/test/fixtures/book_with_contributors_attrs.xml +7 -0
  60. data/test/fixtures/book_with_default_namespace.xml +9 -0
  61. data/test/fixtures/book_with_depth.xml +6 -0
  62. data/test/fixtures/book_with_octal_pages.xml +4 -0
  63. data/test/fixtures/book_with_publisher.xml +7 -0
  64. data/test/fixtures/book_with_wrapped_attr.xml +3 -0
  65. data/test/fixtures/dictionary_of_attr_name_clashes.xml +8 -0
  66. data/test/fixtures/dictionary_of_attrs.xml +6 -0
  67. data/test/fixtures/dictionary_of_guarded_names.xml +6 -0
  68. data/test/fixtures/dictionary_of_mixeds.xml +4 -0
  69. data/test/fixtures/dictionary_of_name_clashes.xml +10 -0
  70. data/test/fixtures/dictionary_of_names.xml +4 -0
  71. data/test/fixtures/dictionary_of_texts.xml +10 -0
  72. data/test/fixtures/library.xml +30 -0
  73. data/test/fixtures/library_uppercase.xml +30 -0
  74. data/test/fixtures/muffins.xml +3 -0
  75. data/test/fixtures/nameless_ageless_youth.xml +2 -0
  76. data/test/fixtures/node_with_attr_name_conflicts.xml +1 -0
  77. data/test/fixtures/node_with_name_conflicts.xml +4 -0
  78. data/test/fixtures/numerology.xml +4 -0
  79. data/test/fixtures/person.xml +1 -0
  80. data/test/fixtures/person_with_guarded_mothers.xml +13 -0
  81. data/test/fixtures/person_with_mothers.xml +10 -0
  82. data/test/load_test.rb +6 -0
  83. data/test/mocks/dictionaries.rb +57 -0
  84. data/test/mocks/mocks.rb +279 -0
  85. data/test/support/fixtures.rb +11 -0
  86. data/test/test_helper.rb +34 -0
  87. data/test/unit/definition_test.rb +235 -0
  88. data/test/unit/deprecations_test.rb +24 -0
  89. data/test/unit/to_xml_test.rb +81 -0
  90. data/test/unit/xml_attribute_test.rb +39 -0
  91. data/test/unit/xml_block_test.rb +81 -0
  92. data/test/unit/xml_bool_test.rb +122 -0
  93. data/test/unit/xml_convention_test.rb +150 -0
  94. data/test/unit/xml_hash_test.rb +115 -0
  95. data/test/unit/xml_initialize_test.rb +49 -0
  96. data/test/unit/xml_name_test.rb +141 -0
  97. data/test/unit/xml_namespace_test.rb +31 -0
  98. data/test/unit/xml_object_test.rb +205 -0
  99. data/test/unit/xml_required_test.rb +94 -0
  100. data/test/unit/xml_text_test.rb +71 -0
  101. data/website/index.html +98 -0
  102. metadata +300 -0
@@ -0,0 +1,94 @@
1
+ require 'test/test_helper'
2
+
3
+ class TestXMLRequired < ActiveSupport::TestCase
4
+ def setup
5
+ @full_book = <<BOOK
6
+ <book ISBN="1234">
7
+ <title>This &amp; that</title>
8
+ <contributor_array>
9
+ <contributor role="Author">
10
+ <name>Johnny</name>
11
+ </contributor>
12
+ </contributor_array>
13
+ <contributor_hash>
14
+ <contributor role="Author" name="Johnny" />
15
+ </contributor_hash>
16
+ </book>
17
+ BOOK
18
+
19
+ @book_missing_attr = <<BOOK
20
+ <book>
21
+ <title>This &amp; that</title>
22
+ <contributor_array>
23
+ <contributor role="Author">
24
+ <name>Johnny</name>
25
+ </contributor>
26
+ </contributor_array>
27
+ <contributor_hash>
28
+ <contributor role="Author" name="Johnny" />
29
+ </contributor_hash>
30
+ </book>
31
+ BOOK
32
+
33
+ @book_missing_text = <<BOOK
34
+ <book ISBN="1234">
35
+ <contributor_array>
36
+ <contributor role="Author">
37
+ <name>Johnny</name>
38
+ </contributor>
39
+ </contributor_array>
40
+ <contributor_hash>
41
+ <contributor role="Author" name="Johnny" />
42
+ </contributor_hash>
43
+ </book>
44
+ BOOK
45
+
46
+ @book_missing_array = <<BOOK
47
+ <book ISBN="1234">
48
+ <title>This &amp; that</title>
49
+ <contributor_hash>
50
+ <contributor role="Author" name="Johnny" />
51
+ </contributor_hash>
52
+ </book>
53
+ BOOK
54
+
55
+ @book_missing_hash = <<BOOK
56
+ <book ISBN="1234">
57
+ <title>This &amp; that</title>
58
+ <contributor_array>
59
+ <contributor role="Author">
60
+ <name>Johnny</name>
61
+ </contributor>
62
+ </contributor_array>
63
+ </book>
64
+ BOOK
65
+ end
66
+
67
+ def test_required_passes_on_prescence
68
+ BookWithRequired.from_xml(@full_book)
69
+ end
70
+
71
+ def test_required_throws_on_attr_absence
72
+ assert_raise ROXML::RequiredElementMissing do
73
+ BookWithRequired.from_xml(@book_missing_attr)
74
+ end
75
+ end
76
+
77
+ def test_required_throws_on_text_absence
78
+ assert_raise ROXML::RequiredElementMissing do
79
+ BookWithRequired.from_xml(@book_missing_text)
80
+ end
81
+ end
82
+
83
+ def test_required_throws_on_array_absence
84
+ assert_raise ROXML::RequiredElementMissing do
85
+ BookWithRequired.from_xml(@book_missing_array)
86
+ end
87
+ end
88
+
89
+ def test_required_throws_on_hash_absence
90
+ assert_raise ROXML::RequiredElementMissing do
91
+ BookWithRequired.from_xml(@book_missing_hash)
92
+ end
93
+ end
94
+ end
@@ -0,0 +1,71 @@
1
+ require 'test/test_helper'
2
+
3
+ class TestXMLText < ActiveSupport::TestCase
4
+ # Test a simple mapping with no composition
5
+ def test_valid_simple
6
+ book = Book.from_xml(fixture(:book_valid))
7
+ assert_equal("The PickAxe", book.title)
8
+ assert_equal("David Thomas, Andrew Hunt & Dave Thomas", book.author)
9
+
10
+ assert_equal xml_fixture(:book_valid).to_s.gsub("\n", ''), book.to_xml.to_s.gsub("\n", '')
11
+ end
12
+
13
+ def test_without_needed_from
14
+ assert !Library.from_xml(fixture(:library_uppercase)).name
15
+ end
16
+
17
+ def test_with_needed_from
18
+ assert_equal "Ruby library", Library.from_xml(fixture(:library)).name
19
+ assert_equal "Ruby library", UppercaseLibrary.from_xml(fixture(:library_uppercase)).name
20
+ end
21
+
22
+ def test_as_array
23
+ assert_equal ["David Thomas","Andrew Hunt","Dave Thomas"].sort,
24
+ BookWithAuthors.from_xml(fixture(:book_with_authors)).authors.sort
25
+ end
26
+
27
+ def test_empty_array_result_returned_properly
28
+ empty_array = Class.new do
29
+ include ROXML
30
+
31
+ xml_reader :missing_array, :as => [], :from => 'missing'
32
+ end
33
+
34
+ obj = empty_array.from_xml('<empty_array></empty_array>')
35
+ assert_equal [], obj.missing_array
36
+ end
37
+
38
+ def test_text_modification
39
+ person = Person.from_xml(fixture(:person))
40
+ assert_equal("Ben Franklin", person.name)
41
+ person.name = "Fred"
42
+ xml=person.to_xml.to_s
43
+ assert(/Fred/=~xml)
44
+ end
45
+
46
+ def test_default_initialization
47
+ person = PersonWithMotherOrMissing.from_xml(fixture(:nameless_ageless_youth))
48
+ assert_equal "Anonymous", person.name
49
+ end
50
+
51
+ def test_default_initialization_of_content
52
+ person = Person.from_xml(fixture(:nameless_ageless_youth))
53
+ assert_equal "Unknown", person.name
54
+ end
55
+
56
+ def test_recursive_with_default_initialization
57
+ p = PersonWithMotherOrMissing.from_xml(fixture(:person_with_mothers))
58
+ assert_equal 'Unknown', p.mother.mother.mother.name
59
+ end
60
+
61
+ def test_get_with_block
62
+ p = Book.from_xml(fixture(:book_valid))
63
+ assert_equal 357, p.pages
64
+ end
65
+
66
+ def test_no_name_clashes
67
+ n = NodeWithNameConflicts.from_xml(fixture(:node_with_name_conflicts))
68
+ assert_equal "Just junk... really", n.content
69
+ assert_equal "Cartwheel", n.name
70
+ end
71
+ end
@@ -0,0 +1,98 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
2
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3
+
4
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
5
+ <head>
6
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
7
+
8
+ <title>Empact/roxml @ GitHub</title>
9
+
10
+ <style type="text/css">
11
+ body {
12
+ margin-top: 1.0em;
13
+ background-color: #baafdb;
14
+ font-family: "helvetica";
15
+ color: #000000;
16
+ }
17
+ #container {
18
+ margin: 0 auto;
19
+ width: 700px;
20
+ }
21
+ h1 { font-size: 3.8em; color: #455024; margin-bottom: 3px; }
22
+ h1 .small { font-size: 0.4em; }
23
+ h1 a { text-decoration: none }
24
+ h2 { font-size: 1.5em; color: #455024; }
25
+ h3 { text-align: center; color: #455024; }
26
+ a { color: #455024; }
27
+ .description { font-size: 1.2em; margin-bottom: 30px; margin-top: 30px; font-style: italic;}
28
+ .download { float: right; }
29
+ pre { background: #000; color: #fff; padding: 15px;}
30
+ hr { border: 0; width: 80%; border-bottom: 1px solid #aaa}
31
+ .footer { text-align:center; padding-top:30px; font-style: italic; }
32
+ </style>
33
+
34
+ </head>
35
+
36
+ <body>
37
+ <a href="http://github.com/Empact/roxml"><img style="position: absolute; top: 0; right: 0; border: 0;" src="http://s3.amazonaws.com/github/ribbons/forkme_right_darkblue_121621.png" alt="Fork me on GitHub" /></a>
38
+
39
+ <div id="container">
40
+
41
+ <div class="download">
42
+ <a href="http://github.com/Empact/roxml/zipball/master">
43
+ <img border="0" width="90" src="http://github.com/images/modules/download/zip.png"></a>
44
+ <a href="http://github.com/Empact/roxml/tarball/master">
45
+ <img border="0" width="90" src="http://github.com/images/modules/download/tar.png"></a>
46
+ </div>
47
+
48
+ <h1><a href="http://github.com/Empact/roxml">roxml</a>
49
+ <span class="small">by <a href="http://github.com/Empact">Empact</a></small></h1>
50
+
51
+ <div class="description">
52
+ ROXML is a module for binding Ruby classes to XML. It supports custom mapping and bidirectional marshaling between Ruby and XML using annotation-style class methods. ROXML supports the Nokogiri and LibXML XML processors.
53
+ </div>
54
+
55
+ <p>We may not want to work with XML, but we don't always get to pick just how our data comes. If you do need to do serious work with XML, ROXML is here to make it nice.
56
+
57
+ Use xpath-based xml declarations to map an XML response into an extensible object, use that object, and then ouput it back to xml as it came.
58
+
59
+ Aside from the basics, ROXML has a lot of little goodies to make these definitions minimal and readable, which are worth digging in for. See the 'xml_convention' method for easily referencing xml which uses other naming conventions. See the handling of '?' in accessor names, the application of blocks and such for other manipulations.
60
+
61
+ And finally, if you use this library, feel free to push code back my way. I'll be looking forward to it.</p><h2>Dependencies</h2>
62
+ <p>activesupport >= 2.1.0</p>
63
+ <h2>Install</h2>
64
+ <p>'gem install roxml' will install the latest stable <a href="http://rubyforge.org/frs/?group_id=305">rubyforge version</a></p>
65
+ <h2>License</h2>
66
+ <p>MIT License</p>
67
+ <h2>Authors</h2>
68
+ <p>Ben Woosley (ben.woosley@gmail.com)
69
+ <br/>Anders Engström (anders.engstrom@gnejs.net)
70
+ <br/>James Thompson (james@plainprograms.com)
71
+ <br/>James Healy (jimmy@deefa.com)
72
+ <br/>Zak Mandhro (mandhro@yahoo.com)
73
+ <br/>Russ Olsen (russell.olsen@gmail.com)</p>
74
+ <h2>Contact</h2>
75
+ <p>Ben Woosley (Ben.Woosley@gmail.com)
76
+ <br/> </p>
77
+
78
+
79
+ <h2>Download</h2>
80
+ <p>
81
+ You can download this project in either
82
+ <a href="http://github.com/Empact/roxml/zipball/master">zip</a> or
83
+ <a href="http://github.com/Empact/roxml/tarball/master">tar</a> formats.
84
+ </p>
85
+ <p>You can also clone the project with <a href="http://git-scm.com">Git</a>
86
+ by running:
87
+ <pre>$ git clone git://github.com/Empact/roxml</pre>
88
+ </p>
89
+
90
+ <div class="footer">
91
+ get the source code on GitHub : <a href="http://github.com/Empact/roxml">Empact/roxml</a>
92
+ </div>
93
+
94
+ </div>
95
+
96
+
97
+ </body>
98
+ </html>
metadata ADDED
@@ -0,0 +1,300 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: yob-roxml
3
+ version: !ruby/object:Gem::Version
4
+ hash: 15
5
+ prerelease: false
6
+ segments:
7
+ - 3
8
+ - 1
9
+ - 6
10
+ version: 3.1.6
11
+ platform: ruby
12
+ authors:
13
+ - Ben Woosley
14
+ - Zak Mandhro
15
+ - Anders Engstrom
16
+ - Russ Olsen
17
+ autorequire:
18
+ bindir: bin
19
+ cert_chain: []
20
+
21
+ date: 2010-09-09 00:00:00 +10:00
22
+ default_executable:
23
+ dependencies:
24
+ - !ruby/object:Gem::Dependency
25
+ name: activesupport
26
+ prerelease: false
27
+ requirement: &id001 !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ hash: 3
33
+ segments:
34
+ - 2
35
+ - 3
36
+ - 0
37
+ version: 2.3.0
38
+ type: :runtime
39
+ version_requirements: *id001
40
+ - !ruby/object:Gem::Dependency
41
+ name: nokogiri
42
+ prerelease: false
43
+ requirement: &id002 !ruby/object:Gem::Requirement
44
+ none: false
45
+ requirements:
46
+ - - ">="
47
+ - !ruby/object:Gem::Version
48
+ hash: 29
49
+ segments:
50
+ - 1
51
+ - 3
52
+ - 3
53
+ version: 1.3.3
54
+ type: :runtime
55
+ version_requirements: *id002
56
+ - !ruby/object:Gem::Dependency
57
+ name: rspec
58
+ prerelease: false
59
+ requirement: &id003 !ruby/object:Gem::Requirement
60
+ none: false
61
+ requirements:
62
+ - - ">="
63
+ - !ruby/object:Gem::Version
64
+ hash: 3
65
+ segments:
66
+ - 0
67
+ version: "0"
68
+ type: :development
69
+ version_requirements: *id003
70
+ - !ruby/object:Gem::Dependency
71
+ name: sqlite3-ruby
72
+ prerelease: false
73
+ requirement: &id004 !ruby/object:Gem::Requirement
74
+ none: false
75
+ requirements:
76
+ - - ">="
77
+ - !ruby/object:Gem::Version
78
+ hash: 23
79
+ segments:
80
+ - 1
81
+ - 2
82
+ - 4
83
+ version: 1.2.4
84
+ type: :development
85
+ version_requirements: *id004
86
+ - !ruby/object:Gem::Dependency
87
+ name: activerecord
88
+ prerelease: false
89
+ requirement: &id005 !ruby/object:Gem::Requirement
90
+ none: false
91
+ requirements:
92
+ - - ">="
93
+ - !ruby/object:Gem::Version
94
+ hash: 3
95
+ segments:
96
+ - 2
97
+ - 2
98
+ - 2
99
+ version: 2.2.2
100
+ type: :development
101
+ version_requirements: *id005
102
+ description: |
103
+ ROXML is a Ruby library designed to make it easier for Ruby developers to work with XML.
104
+ Using simple annotations, it enables Ruby classes to be mapped to XML. ROXML takes care
105
+ of the marshalling and unmarshalling of mapped attributes so that developers can focus on
106
+ building first-class Ruby classes. As a result, ROXML simplifies the development of
107
+ RESTful applications, Web Services, and XML-RPC.
108
+
109
+ email: ben.woosley@gmail.com
110
+ executables: []
111
+
112
+ extensions: []
113
+
114
+ extra_rdoc_files:
115
+ - History.txt
116
+ - README.rdoc
117
+ files:
118
+ - .gitignore
119
+ - .gitmodules
120
+ - History.txt
121
+ - LICENSE
122
+ - README.rdoc
123
+ - Rakefile
124
+ - TODO
125
+ - VERSION
126
+ - examples/amazon.rb
127
+ - examples/current_weather.rb
128
+ - examples/dashed_elements.rb
129
+ - examples/library.rb
130
+ - examples/posts.rb
131
+ - examples/rails.rb
132
+ - examples/twitter.rb
133
+ - examples/xml/active_record.xml
134
+ - examples/xml/amazon.xml
135
+ - examples/xml/current_weather.xml
136
+ - examples/xml/dashed_elements.xml
137
+ - examples/xml/posts.xml
138
+ - examples/xml/twitter.xml
139
+ - lib/roxml.rb
140
+ - lib/roxml/definition.rb
141
+ - lib/roxml/hash_definition.rb
142
+ - lib/roxml/xml.rb
143
+ - lib/roxml/xml/parsers/libxml.rb
144
+ - lib/roxml/xml/parsers/nokogiri.rb
145
+ - lib/roxml/xml/references.rb
146
+ - roxml.gemspec
147
+ - spec/definition_spec.rb
148
+ - spec/examples/active_record_spec.rb
149
+ - spec/examples/amazon_spec.rb
150
+ - spec/examples/current_weather_spec.rb
151
+ - spec/examples/dashed_elements_spec.rb
152
+ - spec/examples/library_spec.rb
153
+ - spec/examples/post_spec.rb
154
+ - spec/examples/twitter_spec.rb
155
+ - spec/roxml_spec.rb
156
+ - spec/shared_specs.rb
157
+ - spec/spec.opts
158
+ - spec/spec_helper.rb
159
+ - spec/support/libxml.rb
160
+ - spec/support/nokogiri.rb
161
+ - spec/xml/array_spec.rb
162
+ - spec/xml/attributes_spec.rb
163
+ - spec/xml/encoding_spec.rb
164
+ - spec/xml/namespace_spec.rb
165
+ - spec/xml/namespaces_spec.rb
166
+ - spec/xml/object_spec.rb
167
+ - spec/xml/parser_spec.rb
168
+ - spec/xml/text_spec.rb
169
+ - test/fixtures/book_malformed.xml
170
+ - test/fixtures/book_pair.xml
171
+ - test/fixtures/book_text_with_attribute.xml
172
+ - test/fixtures/book_valid.xml
173
+ - test/fixtures/book_with_authors.xml
174
+ - test/fixtures/book_with_contributions.xml
175
+ - test/fixtures/book_with_contributors.xml
176
+ - test/fixtures/book_with_contributors_attrs.xml
177
+ - test/fixtures/book_with_default_namespace.xml
178
+ - test/fixtures/book_with_depth.xml
179
+ - test/fixtures/book_with_octal_pages.xml
180
+ - test/fixtures/book_with_publisher.xml
181
+ - test/fixtures/book_with_wrapped_attr.xml
182
+ - test/fixtures/dictionary_of_attr_name_clashes.xml
183
+ - test/fixtures/dictionary_of_attrs.xml
184
+ - test/fixtures/dictionary_of_guarded_names.xml
185
+ - test/fixtures/dictionary_of_mixeds.xml
186
+ - test/fixtures/dictionary_of_name_clashes.xml
187
+ - test/fixtures/dictionary_of_names.xml
188
+ - test/fixtures/dictionary_of_texts.xml
189
+ - test/fixtures/library.xml
190
+ - test/fixtures/library_uppercase.xml
191
+ - test/fixtures/muffins.xml
192
+ - test/fixtures/nameless_ageless_youth.xml
193
+ - test/fixtures/node_with_attr_name_conflicts.xml
194
+ - test/fixtures/node_with_name_conflicts.xml
195
+ - test/fixtures/numerology.xml
196
+ - test/fixtures/person.xml
197
+ - test/fixtures/person_with_guarded_mothers.xml
198
+ - test/fixtures/person_with_mothers.xml
199
+ - test/load_test.rb
200
+ - test/mocks/dictionaries.rb
201
+ - test/mocks/mocks.rb
202
+ - test/support/fixtures.rb
203
+ - test/test_helper.rb
204
+ - test/unit/definition_test.rb
205
+ - test/unit/deprecations_test.rb
206
+ - test/unit/to_xml_test.rb
207
+ - test/unit/xml_attribute_test.rb
208
+ - test/unit/xml_block_test.rb
209
+ - test/unit/xml_bool_test.rb
210
+ - test/unit/xml_convention_test.rb
211
+ - test/unit/xml_hash_test.rb
212
+ - test/unit/xml_initialize_test.rb
213
+ - test/unit/xml_name_test.rb
214
+ - test/unit/xml_namespace_test.rb
215
+ - test/unit/xml_object_test.rb
216
+ - test/unit/xml_required_test.rb
217
+ - test/unit/xml_text_test.rb
218
+ - website/index.html
219
+ has_rdoc: true
220
+ homepage: http://roxml.rubyforge.org
221
+ licenses: []
222
+
223
+ post_install_message:
224
+ rdoc_options:
225
+ - --charset=UTF-8
226
+ require_paths:
227
+ - lib
228
+ required_ruby_version: !ruby/object:Gem::Requirement
229
+ none: false
230
+ requirements:
231
+ - - ">="
232
+ - !ruby/object:Gem::Version
233
+ hash: 3
234
+ segments:
235
+ - 0
236
+ version: "0"
237
+ required_rubygems_version: !ruby/object:Gem::Requirement
238
+ none: false
239
+ requirements:
240
+ - - ">="
241
+ - !ruby/object:Gem::Version
242
+ hash: 3
243
+ segments:
244
+ - 0
245
+ version: "0"
246
+ requirements: []
247
+
248
+ rubyforge_project: roxml
249
+ rubygems_version: 1.3.7
250
+ signing_key:
251
+ specification_version: 3
252
+ summary: Non-maintainer maintenance release of ROXML
253
+ test_files:
254
+ - spec/examples/current_weather_spec.rb
255
+ - spec/examples/twitter_spec.rb
256
+ - spec/examples/amazon_spec.rb
257
+ - spec/examples/library_spec.rb
258
+ - spec/examples/post_spec.rb
259
+ - spec/examples/dashed_elements_spec.rb
260
+ - spec/examples/active_record_spec.rb
261
+ - spec/support/libxml.rb
262
+ - spec/support/nokogiri.rb
263
+ - spec/roxml_spec.rb
264
+ - spec/xml/attributes_spec.rb
265
+ - spec/xml/namespaces_spec.rb
266
+ - spec/xml/object_spec.rb
267
+ - spec/xml/namespace_spec.rb
268
+ - spec/xml/parser_spec.rb
269
+ - spec/xml/text_spec.rb
270
+ - spec/xml/encoding_spec.rb
271
+ - spec/xml/array_spec.rb
272
+ - spec/spec_helper.rb
273
+ - spec/definition_spec.rb
274
+ - spec/shared_specs.rb
275
+ - test/support/fixtures.rb
276
+ - test/test_helper.rb
277
+ - test/load_test.rb
278
+ - test/unit/xml_block_test.rb
279
+ - test/unit/xml_object_test.rb
280
+ - test/unit/definition_test.rb
281
+ - test/unit/xml_bool_test.rb
282
+ - test/unit/xml_convention_test.rb
283
+ - test/unit/xml_initialize_test.rb
284
+ - test/unit/xml_text_test.rb
285
+ - test/unit/to_xml_test.rb
286
+ - test/unit/xml_hash_test.rb
287
+ - test/unit/deprecations_test.rb
288
+ - test/unit/xml_required_test.rb
289
+ - test/unit/xml_attribute_test.rb
290
+ - test/unit/xml_namespace_test.rb
291
+ - test/unit/xml_name_test.rb
292
+ - test/mocks/mocks.rb
293
+ - test/mocks/dictionaries.rb
294
+ - examples/library.rb
295
+ - examples/posts.rb
296
+ - examples/amazon.rb
297
+ - examples/dashed_elements.rb
298
+ - examples/current_weather.rb
299
+ - examples/rails.rb
300
+ - examples/twitter.rb