fakeweb 1.2.1 → 1.2.2
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 +7 -0
 - data/lib/fake_web/ext/net_http.rb +3 -3
 - data/test/test_fake_authentication.rb +24 -0
 - metadata +6 -10
 
    
        data/CHANGELOG
    CHANGED
    
    | 
         @@ -1,3 +1,9 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            fakeweb (1.2.2)
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            * fix that HTTP Digest and OAuth requests could raise URI::InvalidURIErrors
         
     | 
| 
      
 4 
     | 
    
         
            +
              [Bill Kocik, Chris Kampmeier]
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
             
     | 
| 
       1 
7 
     | 
    
         
             
            fakeweb (1.2.1)
         
     | 
| 
       2 
8 
     | 
    
         | 
| 
       3 
9 
     | 
    
         
             
            * fix that query parameters are handled correctly when registering with a URI
         
     | 
| 
         @@ -12,6 +18,7 @@ fakeweb (1.2.1) 
     | 
|
| 
       12 
18 
     | 
    
         
             
            * add support for HTTP basic authentication via userinfo strings in URIs
         
     | 
| 
       13 
19 
     | 
    
         
             
              [Michael Bleigh]
         
     | 
| 
       14 
20 
     | 
    
         | 
| 
      
 21 
     | 
    
         
            +
             
     | 
| 
       15 
22 
     | 
    
         
             
            fakeweb (1.2.0)
         
     | 
| 
       16 
23 
     | 
    
         | 
| 
       17 
24 
     | 
    
         
             
            * add lib/fakeweb.rb so you can require "fakeweb" as well [Chris Kampmeier]
         
     | 
| 
         @@ -38,10 +38,10 @@ module Net  #:nodoc: all 
     | 
|
| 
       38 
38 
     | 
    
         
             
                  path = request.path
         
     | 
| 
       39 
39 
     | 
    
         
             
                  path = URI.parse(request.path).request_uri if request.path =~ /^http/
         
     | 
| 
       40 
40 
     | 
    
         | 
| 
       41 
     | 
    
         
            -
                  if request[ 
     | 
| 
       42 
     | 
    
         
            -
                    userinfo = ""
         
     | 
| 
      
 41 
     | 
    
         
            +
                  if request["authorization"] =~ /^Basic /
         
     | 
| 
      
 42 
     | 
    
         
            +
                    userinfo = request["authorization"].sub(/^Basic /, "").unpack("m").first + "@"
         
     | 
| 
       43 
43 
     | 
    
         
             
                  else
         
     | 
| 
       44 
     | 
    
         
            -
                    userinfo =  
     | 
| 
      
 44 
     | 
    
         
            +
                    userinfo = ""
         
     | 
| 
       45 
45 
     | 
    
         
             
                  end
         
     | 
| 
       46 
46 
     | 
    
         | 
| 
       47 
47 
     | 
    
         
             
                  uri = "#{protocol}://#{userinfo}#{self.address}:#{self.port}#{path}"
         
     | 
| 
         @@ -41,4 +41,28 @@ class TestFakeAuthentication < Test::Unit::TestCase 
     | 
|
| 
       41 
41 
     | 
    
         
             
                req.basic_auth 'user2', 'pass'
         
     | 
| 
       42 
42 
     | 
    
         
             
                assert_equal http.request(req).body, 'wrong user'
         
     | 
| 
       43 
43 
     | 
    
         
             
              end
         
     | 
| 
      
 44 
     | 
    
         
            +
             
     | 
| 
      
 45 
     | 
    
         
            +
              def test_basic_auth_support_is_transparent_to_oauth
         
     | 
| 
      
 46 
     | 
    
         
            +
                FakeWeb.register_uri(:get, "http://sp.example.com/protected", :string => "secret")
         
     | 
| 
      
 47 
     | 
    
         
            +
             
     | 
| 
      
 48 
     | 
    
         
            +
                # from http://oauth.net/core/1.0/#auth_header
         
     | 
| 
      
 49 
     | 
    
         
            +
                auth_header = <<-HEADER
         
     | 
| 
      
 50 
     | 
    
         
            +
                  OAuth realm="http://sp.example.com/",
         
     | 
| 
      
 51 
     | 
    
         
            +
                        oauth_consumer_key="0685bd9184jfhq22",
         
     | 
| 
      
 52 
     | 
    
         
            +
                        oauth_token="ad180jjd733klru7",
         
     | 
| 
      
 53 
     | 
    
         
            +
                        oauth_signature_method="HMAC-SHA1",
         
     | 
| 
      
 54 
     | 
    
         
            +
                        oauth_signature="wOJIO9A2W5mFwDgiDvZbTSMK%2FPY%3D",
         
     | 
| 
      
 55 
     | 
    
         
            +
                        oauth_timestamp="137131200",
         
     | 
| 
      
 56 
     | 
    
         
            +
                        oauth_nonce="4572616e48616d6d65724c61686176",
         
     | 
| 
      
 57 
     | 
    
         
            +
                        oauth_version="1.0"
         
     | 
| 
      
 58 
     | 
    
         
            +
                HEADER
         
     | 
| 
      
 59 
     | 
    
         
            +
                auth_header.gsub!(/\s+/, " ").strip!
         
     | 
| 
      
 60 
     | 
    
         
            +
             
     | 
| 
      
 61 
     | 
    
         
            +
                http = Net::HTTP.new("sp.example.com", 80)
         
     | 
| 
      
 62 
     | 
    
         
            +
                response = nil
         
     | 
| 
      
 63 
     | 
    
         
            +
                http.start do |request|
         
     | 
| 
      
 64 
     | 
    
         
            +
                  response = request.get("/protected", {"authorization" => auth_header})
         
     | 
| 
      
 65 
     | 
    
         
            +
                end
         
     | 
| 
      
 66 
     | 
    
         
            +
                assert_equal "secret", response.body
         
     | 
| 
      
 67 
     | 
    
         
            +
              end
         
     | 
| 
       44 
68 
     | 
    
         
             
            end
         
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification 
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: fakeweb
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version 
         
     | 
| 
       4 
     | 
    
         
            -
              version: 1.2. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 1.2.2
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors: 
         
     | 
| 
       7 
7 
     | 
    
         
             
            - Blaine Cook
         
     | 
| 
         @@ -10,7 +10,7 @@ autorequire: 
     | 
|
| 
       10 
10 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       11 
11 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       12 
12 
     | 
    
         | 
| 
       13 
     | 
    
         
            -
            date: 2009-04 
     | 
| 
      
 13 
     | 
    
         
            +
            date: 2009-05-04 00:00:00 -07:00
         
     | 
| 
       14 
14 
     | 
    
         
             
            default_executable: 
         
     | 
| 
       15 
15 
     | 
    
         
             
            dependencies: 
         
     | 
| 
       16 
16 
     | 
    
         
             
            - !ruby/object:Gem::Dependency 
         
     | 
| 
         @@ -38,18 +38,13 @@ files: 
     | 
|
| 
       38 
38 
     | 
    
         
             
            - LICENSE.txt
         
     | 
| 
       39 
39 
     | 
    
         
             
            - README.rdoc
         
     | 
| 
       40 
40 
     | 
    
         
             
            - Rakefile
         
     | 
| 
       41 
     | 
    
         
            -
            - lib
         
     | 
| 
       42 
     | 
    
         
            -
            - lib/fake_web
         
     | 
| 
       43 
41 
     | 
    
         
             
            - lib/fake_web.rb
         
     | 
| 
       44 
     | 
    
         
            -
            - lib/fake_web/ext
         
     | 
| 
       45 
42 
     | 
    
         
             
            - lib/fake_web/ext/net_http.rb
         
     | 
| 
       46 
43 
     | 
    
         
             
            - lib/fake_web/registry.rb
         
     | 
| 
       47 
44 
     | 
    
         
             
            - lib/fake_web/responder.rb
         
     | 
| 
       48 
45 
     | 
    
         
             
            - lib/fake_web/response.rb
         
     | 
| 
       49 
46 
     | 
    
         
             
            - lib/fake_web/stub_socket.rb
         
     | 
| 
       50 
47 
     | 
    
         
             
            - lib/fakeweb.rb
         
     | 
| 
       51 
     | 
    
         
            -
            - test
         
     | 
| 
       52 
     | 
    
         
            -
            - test/fixtures
         
     | 
| 
       53 
48 
     | 
    
         
             
            - test/fixtures/google_response_from_curl
         
     | 
| 
       54 
49 
     | 
    
         
             
            - test/fixtures/google_response_with_transfer_encoding
         
     | 
| 
       55 
50 
     | 
    
         
             
            - test/fixtures/google_response_without_transfer_encoding
         
     | 
| 
         @@ -64,6 +59,8 @@ files: 
     | 
|
| 
       64 
59 
     | 
    
         
             
            - test/test_trailing_slashes.rb
         
     | 
| 
       65 
60 
     | 
    
         
             
            has_rdoc: true
         
     | 
| 
       66 
61 
     | 
    
         
             
            homepage: http://github.com/chrisk/fakeweb
         
     | 
| 
      
 62 
     | 
    
         
            +
            licenses: []
         
     | 
| 
      
 63 
     | 
    
         
            +
             
     | 
| 
       67 
64 
     | 
    
         
             
            post_install_message: 
         
     | 
| 
       68 
65 
     | 
    
         
             
            rdoc_options: 
         
     | 
| 
       69 
66 
     | 
    
         
             
            - --main
         
     | 
| 
         @@ -91,12 +88,11 @@ required_rubygems_version: !ruby/object:Gem::Requirement 
     | 
|
| 
       91 
88 
     | 
    
         
             
            requirements: []
         
     | 
| 
       92 
89 
     | 
    
         | 
| 
       93 
90 
     | 
    
         
             
            rubyforge_project: fakeweb
         
     | 
| 
       94 
     | 
    
         
            -
            rubygems_version: 1.3. 
     | 
| 
      
 91 
     | 
    
         
            +
            rubygems_version: 1.3.2
         
     | 
| 
       95 
92 
     | 
    
         
             
            signing_key: 
         
     | 
| 
       96 
     | 
    
         
            -
            specification_version:  
     | 
| 
      
 93 
     | 
    
         
            +
            specification_version: 3
         
     | 
| 
       97 
94 
     | 
    
         
             
            summary: A tool for faking responses to HTTP requests
         
     | 
| 
       98 
95 
     | 
    
         
             
            test_files: 
         
     | 
| 
       99 
     | 
    
         
            -
            - test/fixtures
         
     | 
| 
       100 
96 
     | 
    
         
             
            - test/fixtures/google_response_from_curl
         
     | 
| 
       101 
97 
     | 
    
         
             
            - test/fixtures/google_response_with_transfer_encoding
         
     | 
| 
       102 
98 
     | 
    
         
             
            - test/fixtures/google_response_without_transfer_encoding
         
     |