happymapper 0.1.3 → 0.1.4
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/History.txt +4 -0
- data/Manifest.txt +1 -0
- data/happymapper.gemspec +2 -2
- data/lib/happymapper/version.rb +1 -1
- data/lib/happymapper.rb +1 -1
- data/spec/fixtures/address.xml +8 -0
- data/spec/happymapper_spec.rb +24 -0
- metadata +2 -1
    
        data/History.txt
    CHANGED
    
    | @@ -1,3 +1,7 @@ | |
| 1 | 
            +
            == 0.1.4 2009-01-05
         | 
| 2 | 
            +
            * 1 major enhancement:
         | 
| 3 | 
            +
              * Fixed parsing when the object is the root node. (Garret Alfert)
         | 
| 4 | 
            +
             | 
| 1 5 | 
             
            == 0.1.3 2008-12-31
         | 
| 2 6 | 
             
            * 1 major enhancement:
         | 
| 3 7 | 
             
              * Added parsing of attributes of elements that are also mapped, see current_weather.rb for example (jeremyf)
         | 
    
        data/Manifest.txt
    CHANGED
    
    
    
        data/happymapper.gemspec
    CHANGED
    
    | @@ -2,7 +2,7 @@ | |
| 2 2 |  | 
| 3 3 | 
             
            Gem::Specification.new do |s|
         | 
| 4 4 | 
             
              s.name = %q{happymapper}
         | 
| 5 | 
            -
              s.version = "0.1. | 
| 5 | 
            +
              s.version = "0.1.4"
         | 
| 6 6 |  | 
| 7 7 | 
             
              s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
         | 
| 8 8 | 
             
              s.authors = ["John Nunemaker"]
         | 
| @@ -10,7 +10,7 @@ Gem::Specification.new do |s| | |
| 10 10 | 
             
              s.description = %q{object to xml mapping library}
         | 
| 11 11 | 
             
              s.email = ["nunemaker@gmail.com"]
         | 
| 12 12 | 
             
              s.extra_rdoc_files = ["History.txt", "License.txt", "Manifest.txt", "PostInstall.txt", "README.txt", "TODO.txt"]
         | 
| 13 | 
            -
              s.files = ["History.txt", "License.txt", "Manifest.txt", "PostInstall.txt", "README.txt", "Rakefile", "TODO.txt", "config/hoe.rb", "config/requirements.rb", "examples/amazon.rb", "examples/current_weather.rb", "examples/post.rb", "examples/twitter.rb", "happymapper.gemspec", "lib/happymapper.rb", "lib/happymapper/attribute.rb", "lib/happymapper/element.rb", "lib/happymapper/item.rb", "lib/happymapper/version.rb", "lib/libxml_ext/libxml_helper.rb", "script/console", "script/destroy", "script/generate", "script/txt2html", "setup.rb", "spec/fixtures/current_weather.xml", "spec/fixtures/pita.xml", "spec/fixtures/posts.xml", "spec/fixtures/statuses.xml", "spec/happymapper_attribute_spec.rb", "spec/happymapper_element_spec.rb", "spec/happymapper_item_spec.rb", "spec/happymapper_spec.rb", "spec/spec.opts", "spec/spec_helper.rb", "tasks/deployment.rake", "tasks/environment.rake", "tasks/rspec.rake", "tasks/website.rake", "website/css/common.css", "website/index.html"]
         | 
| 13 | 
            +
              s.files = ["History.txt", "License.txt", "Manifest.txt", "PostInstall.txt", "README.txt", "Rakefile", "TODO.txt", "config/hoe.rb", "config/requirements.rb", "examples/amazon.rb", "examples/current_weather.rb", "examples/post.rb", "examples/twitter.rb", "happymapper.gemspec", "lib/happymapper.rb", "lib/happymapper/attribute.rb", "lib/happymapper/element.rb", "lib/happymapper/item.rb", "lib/happymapper/version.rb", "lib/libxml_ext/libxml_helper.rb", "script/console", "script/destroy", "script/generate", "script/txt2html", "setup.rb", "spec/fixtures/address.xml", "spec/fixtures/current_weather.xml", "spec/fixtures/pita.xml", "spec/fixtures/posts.xml", "spec/fixtures/statuses.xml", "spec/happymapper_attribute_spec.rb", "spec/happymapper_element_spec.rb", "spec/happymapper_item_spec.rb", "spec/happymapper_spec.rb", "spec/spec.opts", "spec/spec_helper.rb", "tasks/deployment.rake", "tasks/environment.rake", "tasks/rspec.rake", "tasks/website.rake", "website/css/common.css", "website/index.html"]
         | 
| 14 14 | 
             
              s.has_rdoc = true
         | 
| 15 15 | 
             
              s.homepage = %q{http://happymapper.rubyforge.org}
         | 
| 16 16 | 
             
              s.post_install_message = %q{}
         | 
    
        data/lib/happymapper/version.rb
    CHANGED
    
    
    
        data/lib/happymapper.rb
    CHANGED
    
    
    
        data/spec/happymapper_spec.rb
    CHANGED
    
    | @@ -48,6 +48,15 @@ class CurrentWeather | |
| 48 48 | 
             
              element :current_condition, String, :tag => 'aws:current-condition', :attributes => {:icon => String}
         | 
| 49 49 | 
             
            end
         | 
| 50 50 |  | 
| 51 | 
            +
            class Address
         | 
| 52 | 
            +
              include HappyMapper
         | 
| 53 | 
            +
              
         | 
| 54 | 
            +
              element :street, String
         | 
| 55 | 
            +
              element :postcode, String
         | 
| 56 | 
            +
              element :housenumber, String
         | 
| 57 | 
            +
              element :city, String
         | 
| 58 | 
            +
              element :country, String
         | 
| 59 | 
            +
            end
         | 
| 51 60 |  | 
| 52 61 | 
             
            module PITA
         | 
| 53 62 | 
             
              class Item
         | 
| @@ -202,6 +211,21 @@ describe HappyMapper do | |
| 202 211 | 
             
                  first.user.followers_count.should == 486
         | 
| 203 212 | 
             
                end
         | 
| 204 213 | 
             
              end
         | 
| 214 | 
            +
             | 
| 215 | 
            +
              describe "#parse (with xml containing the desired element as root node)" do
         | 
| 216 | 
            +
                before do
         | 
| 217 | 
            +
                  file_contents = File.read(File.dirname(__FILE__) + '/fixtures/address.xml')
         | 
| 218 | 
            +
                  @address = Address.parse(file_contents, :single => true)
         | 
| 219 | 
            +
                end
         | 
| 220 | 
            +
             | 
| 221 | 
            +
                it "should properly create objects" do
         | 
| 222 | 
            +
                  @address.street.should == 'Milchstrasse'
         | 
| 223 | 
            +
                  @address.postcode.should == '26131'
         | 
| 224 | 
            +
                  @address.housenumber.should == '23'
         | 
| 225 | 
            +
                  @address.city.should == 'Oldenburg'
         | 
| 226 | 
            +
                  @address.country.should == 'Germany'
         | 
| 227 | 
            +
                end
         | 
| 228 | 
            +
              end
         | 
| 205 229 |  | 
| 206 230 | 
             
              # TODO: someone please get xml with namespaces working, kthxbai
         | 
| 207 231 | 
             
              describe "#parse (with xml that has namespace)" do
         | 
    
        metadata
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification 
         | 
| 2 2 | 
             
            name: happymapper
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version 
         | 
| 4 | 
            -
              version: 0.1. | 
| 4 | 
            +
              version: 0.1.4
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors: 
         | 
| 7 7 | 
             
            - John Nunemaker
         | 
| @@ -62,6 +62,7 @@ files: | |
| 62 62 | 
             
            - script/generate
         | 
| 63 63 | 
             
            - script/txt2html
         | 
| 64 64 | 
             
            - setup.rb
         | 
| 65 | 
            +
            - spec/fixtures/address.xml
         | 
| 65 66 | 
             
            - spec/fixtures/current_weather.xml
         | 
| 66 67 | 
             
            - spec/fixtures/pita.xml
         | 
| 67 68 | 
             
            - spec/fixtures/posts.xml
         |