roxml 2.5.3 → 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. data/.gitignore +7 -0
  2. data/.gitmodules +3 -0
  3. data/History.txt +38 -1
  4. data/README.rdoc +8 -5
  5. data/Rakefile +35 -36
  6. data/TODO +12 -35
  7. data/VERSION +1 -0
  8. data/examples/amazon.rb +8 -6
  9. data/examples/posts.rb +1 -1
  10. data/examples/{active_record.rb → rails.rb} +2 -2
  11. data/examples/twitter.rb +1 -1
  12. data/lib/roxml.rb +86 -151
  13. data/lib/roxml/definition.rb +64 -152
  14. data/lib/roxml/hash_definition.rb +5 -40
  15. data/lib/roxml/xml.rb +12 -9
  16. data/lib/roxml/xml/parsers/libxml.rb +22 -17
  17. data/lib/roxml/xml/parsers/nokogiri.rb +77 -0
  18. data/lib/roxml/xml/references.rb +66 -57
  19. data/roxml.gemspec +170 -19
  20. data/spec/definition_spec.rb +121 -198
  21. data/spec/examples/active_record_spec.rb +2 -2
  22. data/spec/examples/amazon_spec.rb +3 -2
  23. data/spec/examples/current_weather_spec.rb +2 -2
  24. data/spec/examples/dashed_elements_spec.rb +2 -2
  25. data/spec/examples/library_spec.rb +11 -6
  26. data/spec/examples/post_spec.rb +3 -3
  27. data/spec/examples/twitter_spec.rb +2 -2
  28. data/spec/roxml_spec.rb +15 -15
  29. data/spec/shared_specs.rb +1 -1
  30. data/spec/spec_helper.rb +8 -27
  31. data/spec/support/libxml.rb +3 -0
  32. data/spec/support/nokogiri.rb +3 -0
  33. data/spec/xml/attributes_spec.rb +36 -0
  34. data/spec/xml/namespace_spec.rb +240 -0
  35. data/spec/xml/namespaces_spec.rb +32 -0
  36. data/spec/xml/parser_spec.rb +9 -30
  37. data/tasks/rdoc.rake +13 -0
  38. data/tasks/rspec.rake +21 -17
  39. data/tasks/test.rake +13 -20
  40. data/test/mocks/dictionaries.rb +8 -7
  41. data/test/mocks/mocks.rb +20 -20
  42. data/test/support/fixtures.rb +11 -0
  43. data/test/test_helper.rb +3 -14
  44. data/test/unit/definition_test.rb +21 -95
  45. data/test/unit/deprecations_test.rb +1 -74
  46. data/test/unit/to_xml_test.rb +3 -3
  47. data/test/unit/xml_attribute_test.rb +1 -1
  48. data/test/unit/xml_block_test.rb +3 -3
  49. data/test/unit/xml_bool_test.rb +4 -4
  50. data/test/unit/xml_convention_test.rb +3 -3
  51. data/test/unit/xml_hash_test.rb +5 -14
  52. data/test/unit/xml_initialize_test.rb +2 -6
  53. data/test/unit/xml_name_test.rb +5 -24
  54. data/test/unit/xml_namespace_test.rb +1 -46
  55. data/test/unit/xml_object_test.rb +6 -6
  56. data/test/unit/xml_required_test.rb +3 -2
  57. data/test/unit/xml_text_test.rb +2 -2
  58. data/website/index.html +1 -1
  59. metadata +68 -51
  60. data/Manifest.txt +0 -106
  61. data/lib/roxml/extensions.rb +0 -6
  62. data/lib/roxml/extensions/array.rb +0 -13
  63. data/lib/roxml/extensions/array/conversions.rb +0 -35
  64. data/lib/roxml/extensions/deprecation.rb +0 -33
  65. data/lib/roxml/extensions/string.rb +0 -21
  66. data/lib/roxml/extensions/string/conversions.rb +0 -43
  67. data/lib/roxml/extensions/string/iterators.rb +0 -12
  68. data/lib/roxml/xml/parsers/rexml.rb +0 -84
  69. data/spec/string_spec.rb +0 -15
  70. data/test/bugs/rexml_bugs.rb +0 -15
  71. data/test/release/dependencies_test.rb +0 -32
  72. data/test/unit/xml_construct_test.rb +0 -77
  73. data/vendor/override_rake_task/README +0 -30
  74. data/vendor/override_rake_task/init.rb +0 -1
  75. data/vendor/override_rake_task/install.rb +0 -46
  76. data/vendor/override_rake_task/lib/override_rake_task.rb +0 -16
@@ -1,7 +1,7 @@
1
- require File.join(File.dirname(__FILE__), '..', 'test_helper')
1
+ require 'test/test_helper'
2
2
 
3
3
  class InheritedBookWithDepth < Book
4
- xml_reader :depth, Measurement
4
+ xml_reader :depth, :as => Measurement
5
5
  end
6
6
 
7
7
  class BookWithXmlInitialize < BookWithDepth
@@ -14,10 +14,6 @@ class BookWithXmlInitialize < BookWithDepth
14
14
  end
15
15
 
16
16
  class TestXMLInitialize < ActiveSupport::TestCase
17
- def test_xml_construct_not_in_use
18
- assert Measurement.xml_construction_args_without_deprecation.empty?
19
- end
20
-
21
17
  def test_initialize_is_run
22
18
  m = Measurement.from_xml('<measurement units="hundredths-meters">1130</measurement>')
23
19
  assert_equal 11.3, m.value
@@ -1,4 +1,4 @@
1
- require File.join(File.dirname(__FILE__), '..', 'test_helper')
1
+ require 'test/test_helper'
2
2
 
3
3
  # Parent | Child
4
4
  # :from | no :from |
@@ -24,28 +24,28 @@ class ParentOfNamedChild
24
24
  include ROXML
25
25
 
26
26
  xml_name :parent
27
- xml_accessor :child_accessor_name, NamedChild
27
+ xml_accessor :child_accessor_name, :as => NamedChild
28
28
  end
29
29
 
30
30
  class ParentOfNamedChildWithFrom
31
31
  include ROXML
32
32
 
33
33
  xml_name :parent
34
- xml_accessor :child_accessor_name, NamedChild, :from => 'child_from_name'
34
+ xml_accessor :child_accessor_name, :as => NamedChild, :from => 'child_from_name'
35
35
  end
36
36
 
37
37
  class ParentOfUnnamedChild
38
38
  include ROXML
39
39
 
40
40
  xml_name :parent
41
- xml_accessor :child_accessor_name, Child
41
+ xml_accessor :child_accessor_name, :as => Child
42
42
  end
43
43
 
44
44
  class ParentOfUnnamedChildWithFrom
45
45
  include ROXML
46
46
 
47
47
  xml_name :parent
48
- xml_accessor :child_accessor_name, Child, :from => 'child_from_name'
48
+ xml_accessor :child_accessor_name,:as => Child, :from => 'child_from_name'
49
49
  end
50
50
 
51
51
  class TestXMLName < ActiveSupport::TestCase
@@ -104,31 +104,12 @@ class TestXMLName < ActiveSupport::TestCase
104
104
  assert_equal :dictionary, dict.class.tag_name
105
105
  end
106
106
 
107
- def test_tag_refs
108
- assert_equal 'definition', DictionaryOfTexts.tag_refs_without_deprecation.first.name
109
- assert_equal 'word', DictionaryOfTexts.tag_refs_without_deprecation.first.hash.key.name
110
- assert_equal 'meaning', DictionaryOfTexts.tag_refs_without_deprecation.first.hash.value.name
111
-
112
- dict = DictionaryOfTexts.from_xml(fixture(:dictionary_of_texts))
113
-
114
- assert_equal 'definition', dict.tag_refs_without_deprecation.first.name
115
- assert_equal 'word', dict.tag_refs_without_deprecation.first.hash.key.name
116
- assert_equal 'meaning', dict.tag_refs_without_deprecation.first.hash.value.name
117
- end
118
-
119
107
  def test_roxml_attrs
120
108
  assert_equal 'definition', DictionaryOfTexts.roxml_attrs.first.name
121
109
  assert_equal 'word', DictionaryOfTexts.roxml_attrs.first.hash.key.name
122
110
  assert_equal 'meaning', DictionaryOfTexts.roxml_attrs.first.hash.value.name
123
111
  end
124
112
 
125
- def test_xml_name_query_is_deprecated
126
- # This query should go when the XML_NAME_WARNING stuff goes
127
- assert_deprecated do
128
- NamedChild.xml_name?
129
- end
130
- end
131
-
132
113
  def test_xml_name_should_not_be_conventionalized_if_explicitly_set
133
114
  reference = ROXML::XMLTextRef.new(ROXML::Definition.new(:name, :from => 'georss:name'), WrapModule::InstanceStandin.new)
134
115
  assert_equal "georss:name", reference.name
@@ -1,4 +1,4 @@
1
- require File.join(File.dirname(__FILE__), '..', 'test_helper')
1
+ require 'test/test_helper'
2
2
 
3
3
  class TestDefaultXMLNamespaces < ActiveSupport::TestCase
4
4
  def setup
@@ -17,14 +17,6 @@ class TestDefaultXMLNamespaces < ActiveSupport::TestCase
17
17
  end
18
18
  end
19
19
 
20
- def test_that_rexml_follows_nameless_default_namespace
21
- require 'rexml/document'
22
- xml = REXML::Document.new(
23
- '<container xmlns="http://fakenamespace.org"><node>Yeah, content</node></container>')
24
-
25
- assert_equal "Yeah, content", xml.root.get_elements('node').first.text
26
- end
27
-
28
20
  def test_default_namespace_on_root_node_should_be_found
29
21
  require 'libxml'
30
22
  xml = LibXML::XML::Parser.string(
@@ -37,40 +29,3 @@ class TestDefaultXMLNamespaces < ActiveSupport::TestCase
37
29
  rescue LoadError
38
30
  end
39
31
  end
40
-
41
- class NamespaceyObject
42
- include ROXML
43
- xml_namespace :aws
44
-
45
- xml_reader :default_namespace
46
- xml_reader :different_namespace, :from => 'different:namespace'
47
- xml_reader :no_namespace, :from => 'no_namespace'
48
- end
49
-
50
- class TestXMLNamespaceDeclarations < ActiveSupport::TestCase
51
- def setup
52
- @instance = NamespaceyObject.from_xml(%{
53
- <aws:book xmlns:aws="http://www.aws.com/aws" xmlns:different="http://www.aws.com/different">
54
- <aws:default_namespace>default_value</aws:default_namespace>
55
- <different:namespace>different_value</different:namespace>
56
- <no_namespace>no_value</no_namespace>
57
- </aws:book>
58
- })
59
- end
60
-
61
- def test_namespace_is_accessible
62
- assert_equal "aws", @instance.class.roxml_namespace
63
- end
64
-
65
- def test_namespace_declaration_should_be_followed_on_attributes
66
- assert_equal "default_value", @instance.default_namespace
67
- end
68
-
69
- def test_namespace_declaration_can_be_overriden_for_different_namespace_elements
70
- assert_equal "different_value", @instance.different_namespace
71
- end
72
-
73
- def test_namespace_declaration_can_be_overriden_for_no_namespace_elements
74
- assert_equal "no_value", @instance.no_namespace
75
- end
76
- end
@@ -1,4 +1,4 @@
1
- require File.join(File.dirname(__FILE__), '..', 'test_helper')
1
+ require 'test/test_helper'
2
2
 
3
3
  class EmptyCart
4
4
  include ROXML
@@ -13,7 +13,7 @@ end
13
13
  class CartHolder
14
14
  include ROXML
15
15
 
16
- xml_reader :cart, EmptyCart, :required => true
16
+ xml_reader :cart, :as => EmptyCart, :required => true
17
17
  end
18
18
 
19
19
  class TestXMLObject < ActiveSupport::TestCase
@@ -120,24 +120,24 @@ class TestXMLObject < ActiveSupport::TestCase
120
120
  include ROXML
121
121
 
122
122
  xml_reader :name, :from => 'node_name'
123
- xml_reader :nodes, [Node]
123
+ xml_reader :nodes, :as => [Node]
124
124
  end
125
125
 
126
126
  class Taxonomy
127
127
  include ROXML
128
128
 
129
129
  xml_reader :name, :from => 'taxonomy_name'
130
- xml_reader :nodes, [Node]
130
+ xml_reader :nodes, :as => [Node]
131
131
  end
132
132
 
133
133
  class Taxonomies
134
134
  include ROXML
135
- xml_reader :taxonomies, [Taxonomy]
135
+ xml_reader :taxonomies, :as => [Taxonomy]
136
136
  end
137
137
 
138
138
  def test_more_recursion
139
139
  # quiet the error handler
140
- ROXML::XML::Error.reset_handler
140
+ ROXML::XML::Error.reset_handler if ROXML::XML::Error.respond_to?(:reset_handler)
141
141
  taxonomies = Taxonomies.from_xml(<<HERE)
142
142
  <?xml version="1.0" encoding="UTF-8" ?>
143
143
  <!DOCTYPE taxonomies SYSTEM "taxonomy.dtd">
@@ -1,4 +1,4 @@
1
- require File.join(File.dirname(__FILE__), '..', 'test_helper')
1
+ require 'test/test_helper'
2
2
 
3
3
  class TestXMLRequired < ActiveSupport::TestCase
4
4
  def setup
@@ -70,7 +70,8 @@ BOOK
70
70
 
71
71
  def test_required_throws_on_attr_absence
72
72
  assert_raise ROXML::RequiredElementMissing do
73
- BookWithRequired.from_xml(@book_missing_attr)
74
73
  end
74
+ BookWithRequired.from_xml(@book_missing_attr)
75
+ end
75
76
  end
76
77
 
77
78
  def test_required_throws_on_text_absence
@@ -1,4 +1,4 @@
1
- require File.join(File.dirname(__FILE__), '..', 'test_helper')
1
+ require 'test/test_helper'
2
2
 
3
3
  class TestXMLText < ActiveSupport::TestCase
4
4
  # Test a simple mapping with no composition
@@ -28,7 +28,7 @@ class TestXMLText < ActiveSupport::TestCase
28
28
  empty_array = Class.new do
29
29
  include ROXML
30
30
 
31
- xml_reader :missing_array, [:text], :from => 'missing'
31
+ xml_reader :missing_array, :as => [], :from => 'missing'
32
32
  end
33
33
 
34
34
  obj = empty_array.from_xml('<empty_array></empty_array>')
@@ -49,7 +49,7 @@
49
49
  <span class="small">by <a href="http://github.com/Empact">Empact</a></small></h1>
50
50
 
51
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 LibXML and REXML XML processors.
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
53
  </div>
54
54
 
55
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.
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: roxml
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.5.3
4
+ version: 3.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ben Woosley
@@ -12,7 +12,7 @@ autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
14
 
15
- date: 2009-04-17 00:00:00 -04:00
15
+ date: 2009-10-16 00:00:00 -04:00
16
16
  default_executable:
17
17
  dependencies:
18
18
  - !ruby/object:Gem::Dependency
@@ -26,24 +26,24 @@ dependencies:
26
26
  version: 2.1.0
27
27
  version:
28
28
  - !ruby/object:Gem::Dependency
29
- name: libxml-ruby
29
+ name: nokogiri
30
30
  type: :runtime
31
31
  version_requirement:
32
32
  version_requirements: !ruby/object:Gem::Requirement
33
33
  requirements:
34
34
  - - ">="
35
35
  - !ruby/object:Gem::Version
36
- version: 1.0.0
36
+ version: 1.3.3
37
37
  version:
38
38
  - !ruby/object:Gem::Dependency
39
- name: newgem
39
+ name: rspec
40
40
  type: :development
41
41
  version_requirement:
42
42
  version_requirements: !ruby/object:Gem::Requirement
43
43
  requirements:
44
44
  - - ">="
45
45
  - !ruby/object:Gem::Version
46
- version: 1.3.0
46
+ version: "0"
47
47
  version:
48
48
  - !ruby/object:Gem::Dependency
49
49
  name: sqlite3-ruby
@@ -65,17 +65,13 @@ dependencies:
65
65
  - !ruby/object:Gem::Version
66
66
  version: 2.2.2
67
67
  version:
68
- - !ruby/object:Gem::Dependency
69
- name: hoe
70
- type: :development
71
- version_requirement:
72
- version_requirements: !ruby/object:Gem::Requirement
73
- requirements:
74
- - - ">="
75
- - !ruby/object:Gem::Version
76
- version: 1.8.0
77
- version:
78
- description: ROXML is a Ruby library designed to make it easier for Ruby developers to work with XML. Using simple annotations, it enables Ruby classes to be mapped to XML. ROXML takes care of the marshalling and unmarshalling of mapped attributes so that developers can focus on building first-class Ruby classes. As a result, ROXML simplifies the development of RESTful applications, Web Services, and XML-RPC.
68
+ description: |
69
+ ROXML is a Ruby library designed to make it easier for Ruby developers to work with XML.
70
+ Using simple annotations, it enables Ruby classes to be mapped to XML. ROXML takes care
71
+ of the marshalling and unmarshalling of mapped attributes so that developers can focus on
72
+ building first-class Ruby classes. As a result, ROXML simplifies the development of
73
+ RESTful applications, Web Services, and XML-RPC.
74
+
79
75
  email: ben.woosley@gmail.com
80
76
  executables: []
81
77
 
@@ -83,22 +79,23 @@ extensions: []
83
79
 
84
80
  extra_rdoc_files:
85
81
  - History.txt
86
- - Manifest.txt
87
82
  - README.rdoc
88
83
  files:
84
+ - .gitignore
85
+ - .gitmodules
89
86
  - History.txt
90
87
  - MIT-LICENSE
91
- - Manifest.txt
92
88
  - README.rdoc
93
89
  - Rakefile
94
90
  - TODO
91
+ - VERSION
95
92
  - config/website.yml
96
- - examples/active_record.rb
97
93
  - examples/amazon.rb
98
94
  - examples/current_weather.rb
99
95
  - examples/dashed_elements.rb
100
96
  - examples/library.rb
101
97
  - examples/posts.rb
98
+ - examples/rails.rb
102
99
  - examples/twitter.rb
103
100
  - examples/xml/active_record.xml
104
101
  - examples/xml/amazon.xml
@@ -108,17 +105,10 @@ files:
108
105
  - examples/xml/twitter.xml
109
106
  - lib/roxml.rb
110
107
  - lib/roxml/definition.rb
111
- - lib/roxml/extensions.rb
112
- - lib/roxml/extensions/array.rb
113
- - lib/roxml/extensions/array/conversions.rb
114
- - lib/roxml/extensions/deprecation.rb
115
- - lib/roxml/extensions/string.rb
116
- - lib/roxml/extensions/string/conversions.rb
117
- - lib/roxml/extensions/string/iterators.rb
118
108
  - lib/roxml/hash_definition.rb
119
109
  - lib/roxml/xml.rb
120
110
  - lib/roxml/xml/parsers/libxml.rb
121
- - lib/roxml/xml/parsers/rexml.rb
111
+ - lib/roxml/xml/parsers/nokogiri.rb
122
112
  - lib/roxml/xml/references.rb
123
113
  - roxml.gemspec
124
114
  - spec/definition_spec.rb
@@ -133,11 +123,15 @@ files:
133
123
  - spec/shared_specs.rb
134
124
  - spec/spec.opts
135
125
  - spec/spec_helper.rb
136
- - spec/string_spec.rb
126
+ - spec/support/libxml.rb
127
+ - spec/support/nokogiri.rb
128
+ - spec/xml/attributes_spec.rb
129
+ - spec/xml/namespace_spec.rb
130
+ - spec/xml/namespaces_spec.rb
137
131
  - spec/xml/parser_spec.rb
132
+ - tasks/rdoc.rake
138
133
  - tasks/rspec.rake
139
134
  - tasks/test.rake
140
- - test/bugs/rexml_bugs.rb
141
135
  - test/fixtures/book_malformed.xml
142
136
  - test/fixtures/book_pair.xml
143
137
  - test/fixtures/book_text_with_attribute.xml
@@ -170,7 +164,7 @@ files:
170
164
  - test/fixtures/person_with_mothers.xml
171
165
  - test/mocks/dictionaries.rb
172
166
  - test/mocks/mocks.rb
173
- - test/release/dependencies_test.rb
167
+ - test/support/fixtures.rb
174
168
  - test/test_helper.rb
175
169
  - test/unit/definition_test.rb
176
170
  - test/unit/deprecations_test.rb
@@ -178,7 +172,6 @@ files:
178
172
  - test/unit/xml_attribute_test.rb
179
173
  - test/unit/xml_block_test.rb
180
174
  - test/unit/xml_bool_test.rb
181
- - test/unit/xml_construct_test.rb
182
175
  - test/unit/xml_convention_test.rb
183
176
  - test/unit/xml_hash_test.rb
184
177
  - test/unit/xml_initialize_test.rb
@@ -187,17 +180,14 @@ files:
187
180
  - test/unit/xml_object_test.rb
188
181
  - test/unit/xml_required_test.rb
189
182
  - test/unit/xml_text_test.rb
190
- - vendor/override_rake_task/README
191
- - vendor/override_rake_task/init.rb
192
- - vendor/override_rake_task/install.rb
193
- - vendor/override_rake_task/lib/override_rake_task.rb
194
183
  - website/index.html
195
184
  has_rdoc: true
196
185
  homepage: http://roxml.rubyforge.org
186
+ licenses: []
187
+
197
188
  post_install_message:
198
189
  rdoc_options:
199
- - --main
200
- - README.rdoc
190
+ - --charset=UTF-8
201
191
  require_paths:
202
192
  - lib
203
193
  required_ruby_version: !ruby/object:Gem::Requirement
@@ -215,23 +205,50 @@ required_rubygems_version: !ruby/object:Gem::Requirement
215
205
  requirements: []
216
206
 
217
207
  rubyforge_project: roxml
218
- rubygems_version: 1.3.1
208
+ rubygems_version: 1.3.5
219
209
  signing_key:
220
- specification_version: 2
210
+ specification_version: 3
221
211
  summary: Ruby Object to XML mapping library
222
212
  test_files:
223
- - test/unit/xml_convention_test.rb
224
- - test/unit/xml_object_test.rb
225
- - test/unit/xml_required_test.rb
226
- - test/unit/xml_bool_test.rb
227
- - test/unit/xml_name_test.rb
213
+ - spec/definition_spec.rb
214
+ - spec/examples/active_record_spec.rb
215
+ - spec/examples/amazon_spec.rb
216
+ - spec/examples/current_weather_spec.rb
217
+ - spec/examples/dashed_elements_spec.rb
218
+ - spec/examples/library_spec.rb
219
+ - spec/examples/post_spec.rb
220
+ - spec/examples/twitter_spec.rb
221
+ - spec/roxml_spec.rb
222
+ - spec/shared_specs.rb
223
+ - spec/spec_helper.rb
224
+ - spec/support/libxml.rb
225
+ - spec/support/nokogiri.rb
226
+ - spec/xml/attributes_spec.rb
227
+ - spec/xml/namespace_spec.rb
228
+ - spec/xml/namespaces_spec.rb
229
+ - spec/xml/parser_spec.rb
230
+ - test/mocks/dictionaries.rb
231
+ - test/mocks/mocks.rb
232
+ - test/support/fixtures.rb
233
+ - test/test_helper.rb
228
234
  - test/unit/definition_test.rb
229
- - test/unit/xml_construct_test.rb
230
- - test/unit/xml_namespace_test.rb
231
235
  - test/unit/deprecations_test.rb
232
- - test/unit/xml_text_test.rb
233
- - test/unit/xml_block_test.rb
236
+ - test/unit/to_xml_test.rb
234
237
  - test/unit/xml_attribute_test.rb
235
- - test/unit/xml_initialize_test.rb
238
+ - test/unit/xml_block_test.rb
239
+ - test/unit/xml_bool_test.rb
240
+ - test/unit/xml_convention_test.rb
236
241
  - test/unit/xml_hash_test.rb
237
- - test/unit/to_xml_test.rb
242
+ - test/unit/xml_initialize_test.rb
243
+ - test/unit/xml_name_test.rb
244
+ - test/unit/xml_namespace_test.rb
245
+ - test/unit/xml_object_test.rb
246
+ - test/unit/xml_required_test.rb
247
+ - test/unit/xml_text_test.rb
248
+ - examples/amazon.rb
249
+ - examples/current_weather.rb
250
+ - examples/dashed_elements.rb
251
+ - examples/library.rb
252
+ - examples/posts.rb
253
+ - examples/rails.rb
254
+ - examples/twitter.rb