httparty 0.8.0 → 0.9.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.
Potentially problematic release.
This version of httparty might be problematic. Click here for more details.
- data/.gitignore +1 -0
- data/.travis.yml +8 -0
- data/Gemfile +8 -1
- data/Guardfile +16 -0
- data/History +34 -0
- data/README.md +79 -0
- data/bin/httparty +10 -4
- data/cucumber.yml +1 -1
- data/examples/crack.rb +19 -0
- data/examples/headers_and_user_agents.rb +6 -0
- data/examples/nokogiri_html_parser.rb +22 -0
- data/features/steps/remote_service_steps.rb +1 -1
- data/httparty.gemspec +2 -2
- data/lib/httparty.rb +81 -30
- data/lib/httparty/connection_adapter.rb +116 -0
- data/lib/httparty/cookie_hash.rb +2 -2
- data/lib/httparty/core_extensions.rb +23 -0
- data/lib/httparty/hash_conversions.rb +1 -1
- data/lib/httparty/module_inheritable_attributes.rb +11 -1
- data/lib/httparty/net_digest_auth.rb +20 -7
- data/lib/httparty/parser.rb +10 -6
- data/lib/httparty/request.rb +34 -51
- data/lib/httparty/response.rb +17 -40
- data/lib/httparty/response/headers.rb +31 -0
- data/lib/httparty/version.rb +1 -1
- data/spec/httparty/connection_adapter_spec.rb +206 -0
- data/spec/httparty/cookie_hash_spec.rb +3 -4
- data/spec/httparty/net_digest_auth_spec.rb +33 -11
- data/spec/httparty/parser_spec.rb +16 -0
- data/spec/httparty/request_spec.rb +78 -101
- data/spec/httparty/response_spec.rb +41 -20
- data/spec/httparty/ssl_spec.rb +13 -5
- data/spec/httparty_spec.rb +84 -2
- data/spec/spec.opts +0 -1
- data/spec/spec_helper.rb +8 -0
- data/spec/support/ssl_test_helper.rb +28 -6
- data/spec/support/ssl_test_server.rb +19 -8
- data/spec/support/stub_response.rb +13 -0
- metadata +53 -61
- data/README.rdoc +0 -54
    
        metadata
    CHANGED
    
    | @@ -1,74 +1,65 @@ | |
| 1 | 
            -
            --- !ruby/object:Gem::Specification | 
| 1 | 
            +
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: httparty
         | 
| 3 | 
            -
            version: !ruby/object:Gem::Version | 
| 4 | 
            -
               | 
| 3 | 
            +
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            +
              version: 0.9.0
         | 
| 5 5 | 
             
              prerelease: 
         | 
| 6 | 
            -
              segments: 
         | 
| 7 | 
            -
              - 0
         | 
| 8 | 
            -
              - 8
         | 
| 9 | 
            -
              - 0
         | 
| 10 | 
            -
              version: 0.8.0
         | 
| 11 6 | 
             
            platform: ruby
         | 
| 12 | 
            -
            authors: | 
| 7 | 
            +
            authors:
         | 
| 13 8 | 
             
            - John Nunemaker
         | 
| 14 9 | 
             
            - Sandro Turriate
         | 
| 15 10 | 
             
            autorequire: 
         | 
| 16 11 | 
             
            bindir: bin
         | 
| 17 12 | 
             
            cert_chain: []
         | 
| 18 | 
            -
             | 
| 19 | 
            -
             | 
| 20 | 
            -
             | 
| 21 | 
            -
            - !ruby/object:Gem::Dependency 
         | 
| 13 | 
            +
            date: 2012-09-07 00:00:00.000000000 Z
         | 
| 14 | 
            +
            dependencies:
         | 
| 15 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 22 16 | 
             
              name: multi_json
         | 
| 23 | 
            -
               | 
| 24 | 
            -
              requirement: &id001 !ruby/object:Gem::Requirement 
         | 
| 17 | 
            +
              requirement: &70139029121860 !ruby/object:Gem::Requirement
         | 
| 25 18 | 
             
                none: false
         | 
| 26 | 
            -
                requirements: | 
| 27 | 
            -
                - -  | 
| 28 | 
            -
                  - !ruby/object:Gem::Version | 
| 29 | 
            -
                     | 
| 30 | 
            -
                    segments: 
         | 
| 31 | 
            -
                    - 0
         | 
| 32 | 
            -
                    version: "0"
         | 
| 19 | 
            +
                requirements:
         | 
| 20 | 
            +
                - - ~>
         | 
| 21 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 22 | 
            +
                    version: '1.0'
         | 
| 33 23 | 
             
              type: :runtime
         | 
| 34 | 
            -
              version_requirements: *id001
         | 
| 35 | 
            -
            - !ruby/object:Gem::Dependency 
         | 
| 36 | 
            -
              name: multi_xml
         | 
| 37 24 | 
             
              prerelease: false
         | 
| 38 | 
            -
               | 
| 25 | 
            +
              version_requirements: *70139029121860
         | 
| 26 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 27 | 
            +
              name: multi_xml
         | 
| 28 | 
            +
              requirement: &70139029121440 !ruby/object:Gem::Requirement
         | 
| 39 29 | 
             
                none: false
         | 
| 40 | 
            -
                requirements: | 
| 41 | 
            -
                - -  | 
| 42 | 
            -
                  - !ruby/object:Gem::Version | 
| 43 | 
            -
                     | 
| 44 | 
            -
                    segments: 
         | 
| 45 | 
            -
                    - 0
         | 
| 46 | 
            -
                    version: "0"
         | 
| 30 | 
            +
                requirements:
         | 
| 31 | 
            +
                - - ! '>='
         | 
| 32 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 33 | 
            +
                    version: '0'
         | 
| 47 34 | 
             
              type: :runtime
         | 
| 48 | 
            -
               | 
| 35 | 
            +
              prerelease: false
         | 
| 36 | 
            +
              version_requirements: *70139029121440
         | 
| 49 37 | 
             
            description: Makes http fun! Also, makes consuming restful web services dead easy.
         | 
| 50 | 
            -
            email: | 
| 38 | 
            +
            email:
         | 
| 51 39 | 
             
            - nunemaker@gmail.com
         | 
| 52 | 
            -
            executables: | 
| 40 | 
            +
            executables:
         | 
| 53 41 | 
             
            - httparty
         | 
| 54 42 | 
             
            extensions: []
         | 
| 55 | 
            -
             | 
| 56 43 | 
             
            extra_rdoc_files: []
         | 
| 57 | 
            -
             | 
| 58 | 
            -
            files: 
         | 
| 44 | 
            +
            files:
         | 
| 59 45 | 
             
            - .gitignore
         | 
| 46 | 
            +
            - .travis.yml
         | 
| 60 47 | 
             
            - Gemfile
         | 
| 48 | 
            +
            - Guardfile
         | 
| 61 49 | 
             
            - History
         | 
| 62 50 | 
             
            - MIT-LICENSE
         | 
| 63 | 
            -
            - README. | 
| 51 | 
            +
            - README.md
         | 
| 64 52 | 
             
            - Rakefile
         | 
| 65 53 | 
             
            - bin/httparty
         | 
| 66 54 | 
             
            - cucumber.yml
         | 
| 67 55 | 
             
            - examples/aaws.rb
         | 
| 68 56 | 
             
            - examples/basic.rb
         | 
| 57 | 
            +
            - examples/crack.rb
         | 
| 69 58 | 
             
            - examples/custom_parsers.rb
         | 
| 70 59 | 
             
            - examples/delicious.rb
         | 
| 71 60 | 
             
            - examples/google.rb
         | 
| 61 | 
            +
            - examples/headers_and_user_agents.rb
         | 
| 62 | 
            +
            - examples/nokogiri_html_parser.rb
         | 
| 72 63 | 
             
            - examples/rubyurl.rb
         | 
| 73 64 | 
             
            - examples/tripit_sign_in.rb
         | 
| 74 65 | 
             
            - examples/twitter.rb
         | 
| @@ -88,6 +79,7 @@ files: | |
| 88 79 | 
             
            - features/supports_timeout_option.feature
         | 
| 89 80 | 
             
            - httparty.gemspec
         | 
| 90 81 | 
             
            - lib/httparty.rb
         | 
| 82 | 
            +
            - lib/httparty/connection_adapter.rb
         | 
| 91 83 | 
             
            - lib/httparty/cookie_hash.rb
         | 
| 92 84 | 
             
            - lib/httparty/core_extensions.rb
         | 
| 93 85 | 
             
            - lib/httparty/exceptions.rb
         | 
| @@ -97,6 +89,7 @@ files: | |
| 97 89 | 
             
            - lib/httparty/parser.rb
         | 
| 98 90 | 
             
            - lib/httparty/request.rb
         | 
| 99 91 | 
             
            - lib/httparty/response.rb
         | 
| 92 | 
            +
            - lib/httparty/response/headers.rb
         | 
| 100 93 | 
             
            - lib/httparty/version.rb
         | 
| 101 94 | 
             
            - spec/fixtures/delicious.xml
         | 
| 102 95 | 
             
            - spec/fixtures/empty.xml
         | 
| @@ -113,6 +106,7 @@ files: | |
| 113 106 | 
             
            - spec/fixtures/twitter.json
         | 
| 114 107 | 
             
            - spec/fixtures/twitter.xml
         | 
| 115 108 | 
             
            - spec/fixtures/undefined_method_add_node_for_nil.xml
         | 
| 109 | 
            +
            - spec/httparty/connection_adapter_spec.rb
         | 
| 116 110 | 
             
            - spec/httparty/cookie_hash_spec.rb
         | 
| 117 111 | 
             
            - spec/httparty/net_digest_auth_spec.rb
         | 
| 118 112 | 
             
            - spec/httparty/parser_spec.rb
         | 
| @@ -127,40 +121,37 @@ files: | |
| 127 121 | 
             
            - spec/support/stub_response.rb
         | 
| 128 122 | 
             
            - website/css/common.css
         | 
| 129 123 | 
             
            - website/index.html
         | 
| 130 | 
            -
            homepage: http:// | 
| 124 | 
            +
            homepage: http://jnunemaker.github.com/httparty
         | 
| 131 125 | 
             
            licenses: []
         | 
| 132 | 
            -
             | 
| 133 126 | 
             
            post_install_message: When you HTTParty, you must party hard!
         | 
| 134 127 | 
             
            rdoc_options: []
         | 
| 135 | 
            -
             | 
| 136 | 
            -
            require_paths: 
         | 
| 128 | 
            +
            require_paths:
         | 
| 137 129 | 
             
            - lib
         | 
| 138 | 
            -
            required_ruby_version: !ruby/object:Gem::Requirement | 
| 130 | 
            +
            required_ruby_version: !ruby/object:Gem::Requirement
         | 
| 139 131 | 
             
              none: false
         | 
| 140 | 
            -
              requirements: | 
| 141 | 
            -
              - -  | 
| 142 | 
            -
                - !ruby/object:Gem::Version | 
| 143 | 
            -
                   | 
| 144 | 
            -
                  segments: | 
| 132 | 
            +
              requirements:
         | 
| 133 | 
            +
              - - ! '>='
         | 
| 134 | 
            +
                - !ruby/object:Gem::Version
         | 
| 135 | 
            +
                  version: '0'
         | 
| 136 | 
            +
                  segments:
         | 
| 145 137 | 
             
                  - 0
         | 
| 146 | 
            -
                   | 
| 147 | 
            -
            required_rubygems_version: !ruby/object:Gem::Requirement | 
| 138 | 
            +
                  hash: -1568840353759951881
         | 
| 139 | 
            +
            required_rubygems_version: !ruby/object:Gem::Requirement
         | 
| 148 140 | 
             
              none: false
         | 
| 149 | 
            -
              requirements: | 
| 150 | 
            -
              - -  | 
| 151 | 
            -
                - !ruby/object:Gem::Version | 
| 152 | 
            -
                   | 
| 153 | 
            -
                  segments: | 
| 141 | 
            +
              requirements:
         | 
| 142 | 
            +
              - - ! '>='
         | 
| 143 | 
            +
                - !ruby/object:Gem::Version
         | 
| 144 | 
            +
                  version: '0'
         | 
| 145 | 
            +
                  segments:
         | 
| 154 146 | 
             
                  - 0
         | 
| 155 | 
            -
                   | 
| 147 | 
            +
                  hash: -1568840353759951881
         | 
| 156 148 | 
             
            requirements: []
         | 
| 157 | 
            -
             | 
| 158 149 | 
             
            rubyforge_project: 
         | 
| 159 | 
            -
            rubygems_version: 1.8. | 
| 150 | 
            +
            rubygems_version: 1.8.10
         | 
| 160 151 | 
             
            signing_key: 
         | 
| 161 152 | 
             
            specification_version: 3
         | 
| 162 153 | 
             
            summary: Makes http fun! Also, makes consuming restful web services dead easy.
         | 
| 163 | 
            -
            test_files: | 
| 154 | 
            +
            test_files:
         | 
| 164 155 | 
             
            - features/basic_authentication.feature
         | 
| 165 156 | 
             
            - features/command_line.feature
         | 
| 166 157 | 
             
            - features/deals_with_http_error_codes.feature
         | 
| @@ -189,6 +180,7 @@ test_files: | |
| 189 180 | 
             
            - spec/fixtures/twitter.json
         | 
| 190 181 | 
             
            - spec/fixtures/twitter.xml
         | 
| 191 182 | 
             
            - spec/fixtures/undefined_method_add_node_for_nil.xml
         | 
| 183 | 
            +
            - spec/httparty/connection_adapter_spec.rb
         | 
| 192 184 | 
             
            - spec/httparty/cookie_hash_spec.rb
         | 
| 193 185 | 
             
            - spec/httparty/net_digest_auth_spec.rb
         | 
| 194 186 | 
             
            - spec/httparty/parser_spec.rb
         | 
    
        data/README.rdoc
    DELETED
    
    | @@ -1,54 +0,0 @@ | |
| 1 | 
            -
            = httparty
         | 
| 2 | 
            -
             | 
| 3 | 
            -
            Makes http fun again!
         | 
| 4 | 
            -
             | 
| 5 | 
            -
            == Note on Releases
         | 
| 6 | 
            -
             | 
| 7 | 
            -
            Releases are tagged on github and also released as gems on github and rubyforge. Master is pushed to whenever I add a patch or a new feature. To build from master, you can clone the code, generate the updated gemspec, build the gem and install.
         | 
| 8 | 
            -
             | 
| 9 | 
            -
            * rake gemspec
         | 
| 10 | 
            -
            * gem build httparty.gemspec
         | 
| 11 | 
            -
            * gem install the gem that was built
         | 
| 12 | 
            -
             | 
| 13 | 
            -
            == Note on Patches/Pull Requests
         | 
| 14 | 
            -
             | 
| 15 | 
            -
            * Fork the project.
         | 
| 16 | 
            -
            * Make your feature addition or bug fix.
         | 
| 17 | 
            -
            * Add tests for it. This is important so I don't break it in a future version unintentionally.
         | 
| 18 | 
            -
            * Commit, do not mess with rakefile, version, or history. (if you want to have your own version, that is fine but bump version in a commit by itself in another branch so I can ignore when I pull)
         | 
| 19 | 
            -
            * Send me a pull request. Bonus points for topic branches.
         | 
| 20 | 
            -
             | 
| 21 | 
            -
            == Features:
         | 
| 22 | 
            -
             | 
| 23 | 
            -
            * Easy get, post requests
         | 
| 24 | 
            -
            * Basic http authentication
         | 
| 25 | 
            -
            * Default request query string parameters (ie: for api keys that are needed on each request)
         | 
| 26 | 
            -
            * Automatic parsing of JSON and XML into ruby hashes based on response content-type
         | 
| 27 | 
            -
             | 
| 28 | 
            -
            == Examples
         | 
| 29 | 
            -
             | 
| 30 | 
            -
            See http://github.com/jnunemaker/httparty/tree/master/examples
         | 
| 31 | 
            -
             | 
| 32 | 
            -
            == Command Line Interface
         | 
| 33 | 
            -
             | 
| 34 | 
            -
            httparty also includes the executable <tt>httparty</tt> which can be
         | 
| 35 | 
            -
            used to query web services and examine the resulting output. By default
         | 
| 36 | 
            -
            it will output the response as a pretty-printed Ruby object (useful for
         | 
| 37 | 
            -
            grokking the structure of output). This can also be overridden to output
         | 
| 38 | 
            -
            formatted XML or JSON. Execute <tt>httparty --help</tt> for all the
         | 
| 39 | 
            -
            options. Below is an example of how easy it is.
         | 
| 40 | 
            -
             | 
| 41 | 
            -
              httparty "http://twitter.com/statuses/public_timeline.json"
         | 
| 42 | 
            -
             | 
| 43 | 
            -
            == Requirements
         | 
| 44 | 
            -
             | 
| 45 | 
            -
            * multijson and multixml
         | 
| 46 | 
            -
            * You like to party!
         | 
| 47 | 
            -
             | 
| 48 | 
            -
            == Install
         | 
| 49 | 
            -
             | 
| 50 | 
            -
            * sudo gem install httparty
         | 
| 51 | 
            -
             | 
| 52 | 
            -
            == Docs
         | 
| 53 | 
            -
             | 
| 54 | 
            -
            http://rdoc.info/projects/jnunemaker/httparty
         |