rufus-jig 0.1.23 → 1.0.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.
- data/.rspec +1 -0
 - data/CHANGELOG.txt +8 -0
 - data/README.rdoc +41 -11
 - data/Rakefile +37 -12
 - data/TODO.txt +6 -3
 - data/lib/rufus/jig/adapters/em.rb +21 -24
 - data/lib/rufus/jig/adapters/net.rb +3 -4
 - data/lib/rufus/jig/adapters/net_persistent.rb +26 -7
 - data/lib/rufus/jig/adapters/patron.rb +25 -10
 - data/lib/rufus/jig/couch.rb +199 -36
 - data/lib/rufus/jig/http.rb +183 -90
 - data/lib/rufus/jig/path.rb +4 -4
 - data/lib/rufus/jig/version.rb +1 -1
 - data/rufus-jig.gemspec +55 -34
 - data/spec/couch/attachements_spec.rb +113 -0
 - data/spec/couch/basic_auth_spec.rb +75 -0
 - data/spec/couch/conditional_spec.rb +178 -0
 - data/spec/couch/continuous.rb +97 -0
 - data/spec/couch/couch_spec.rb +64 -0
 - data/spec/couch/db_spec.rb +366 -0
 - data/{test → spec/couch}/tweet.png +0 -0
 - data/spec/couch/views_spec.rb +326 -0
 - data/spec/couch_url.txt +2 -0
 - data/spec/jig/basic_auth_spec.rb +51 -0
 - data/spec/jig/conditional_spec.rb +76 -0
 - data/spec/jig/delete_spec.rb +32 -0
 - data/spec/jig/get_spec.rb +116 -0
 - data/spec/jig/misc_spec.rb +120 -0
 - data/spec/jig/new_spec.rb +95 -0
 - data/spec/jig/parse_uri_spec.rb +139 -0
 - data/spec/jig/post_spec.rb +79 -0
 - data/spec/jig/prefix_spec.rb +51 -0
 - data/spec/jig/put_spec.rb +68 -0
 - data/spec/jig/timeout_spec.rb +94 -0
 - data/{test → spec}/server.rb +14 -4
 - data/spec/spec_helper.rb +61 -0
 - data/spec/support/couch_helper.rb +14 -0
 - data/spec/support/server_helper.rb +32 -0
 - metadata +98 -43
 - data/lib/rufus/jig/adapters/net_response.rb +0 -42
 - data/test/base.rb +0 -53
 - data/test/bm/bm0.rb +0 -49
 - data/test/bm/bm1.rb +0 -43
 - data/test/conc/put_vs_delete.rb +0 -28
 - data/test/couch_base.rb +0 -52
 - data/test/couch_url.txt +0 -1
 - data/test/ct_0_couch.rb +0 -64
 - data/test/ct_1_couchdb.rb +0 -204
 - data/test/ct_2_couchdb_options.rb +0 -50
 - data/test/ct_3_couchdb_views.rb +0 -106
 - data/test/ct_4_attachments.rb +0 -126
 - data/test/ct_5_couchdb_continuous.rb +0 -92
 - data/test/cut_0_auth_couch.rb +0 -62
 - data/test/test.rb +0 -28
 - data/test/to.sh +0 -25
 - data/test/tt_0_get_timeout.rb +0 -92
 - data/test/ut_0_http_get.rb +0 -191
 - data/test/ut_1_http_post.rb +0 -81
 - data/test/ut_2_http_delete.rb +0 -42
 - data/test/ut_3_http_put.rb +0 -105
 - data/test/ut_4_http_prefix.rb +0 -50
 - data/test/ut_5_http_misc.rb +0 -65
 - data/test/ut_6_args.rb +0 -98
 - data/test/ut_7_parse_uri.rb +0 -79
 - data/test/ut_8_auth.rb +0 -37
 
    
        data/test/ct_4_attachments.rb
    DELETED
    
    | 
         @@ -1,126 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
             
     | 
| 
       2 
     | 
    
         
            -
            #
         
     | 
| 
       3 
     | 
    
         
            -
            # testing rufus-jig
         
     | 
| 
       4 
     | 
    
         
            -
            #
         
     | 
| 
       5 
     | 
    
         
            -
            # Wed Feb 24 17:29:39 JST 2010
         
     | 
| 
       6 
     | 
    
         
            -
            #
         
     | 
| 
       7 
     | 
    
         
            -
             
     | 
| 
       8 
     | 
    
         
            -
            require File.join(File.dirname(__FILE__), 'couch_base')
         
     | 
| 
       9 
     | 
    
         
            -
             
     | 
| 
       10 
     | 
    
         
            -
             
     | 
| 
       11 
     | 
    
         
            -
            class CtAttachmentsTest < Test::Unit::TestCase
         
     | 
| 
       12 
     | 
    
         
            -
             
     | 
| 
       13 
     | 
    
         
            -
              def setup
         
     | 
| 
       14 
     | 
    
         
            -
             
     | 
| 
       15 
     | 
    
         
            -
                h = Rufus::Jig::Http.new(couch_url)
         
     | 
| 
       16 
     | 
    
         
            -
                begin
         
     | 
| 
       17 
     | 
    
         
            -
                  h.delete('/rufus_jig_test')
         
     | 
| 
       18 
     | 
    
         
            -
                rescue Exception => e
         
     | 
| 
       19 
     | 
    
         
            -
                  #p e
         
     | 
| 
       20 
     | 
    
         
            -
                end
         
     | 
| 
       21 
     | 
    
         
            -
             
     | 
| 
       22 
     | 
    
         
            -
                h.put('/rufus_jig_test', '')
         
     | 
| 
       23 
     | 
    
         
            -
                h.close
         
     | 
| 
       24 
     | 
    
         
            -
             
     | 
| 
       25 
     | 
    
         
            -
                @c = Rufus::Jig::Couch.new(couch_url, 'rufus_jig_test')
         
     | 
| 
       26 
     | 
    
         
            -
             
     | 
| 
       27 
     | 
    
         
            -
                @c.put('_id' => 'thedoc', 'function' => 'recipient for attachements')
         
     | 
| 
       28 
     | 
    
         
            -
                @d = @c.get('thedoc')
         
     | 
| 
       29 
     | 
    
         
            -
              end
         
     | 
| 
       30 
     | 
    
         
            -
             
     | 
| 
       31 
     | 
    
         
            -
              def teardown
         
     | 
| 
       32 
     | 
    
         
            -
             
     | 
| 
       33 
     | 
    
         
            -
                @c.close
         
     | 
| 
       34 
     | 
    
         
            -
              end
         
     | 
| 
       35 
     | 
    
         
            -
             
     | 
| 
       36 
     | 
    
         
            -
              def test_missing_content_type
         
     | 
| 
       37 
     | 
    
         
            -
             
     | 
| 
       38 
     | 
    
         
            -
                assert_raise ArgumentError do
         
     | 
| 
       39 
     | 
    
         
            -
             
     | 
| 
       40 
     | 
    
         
            -
                  @c.attach(
         
     | 
| 
       41 
     | 
    
         
            -
                    'thedoc/message', 'this is a message', :content_type => 'text/plain')
         
     | 
| 
       42 
     | 
    
         
            -
                end
         
     | 
| 
       43 
     | 
    
         
            -
              end
         
     | 
| 
       44 
     | 
    
         
            -
             
     | 
| 
       45 
     | 
    
         
            -
              def test_attach
         
     | 
| 
       46 
     | 
    
         
            -
             
     | 
| 
       47 
     | 
    
         
            -
                r = @c.attach(
         
     | 
| 
       48 
     | 
    
         
            -
                  'thedoc', @d['_rev'], 'message', 'this is a message',
         
     | 
| 
       49 
     | 
    
         
            -
                  :content_type => 'text/plain')
         
     | 
| 
       50 
     | 
    
         
            -
             
     | 
| 
       51 
     | 
    
         
            -
                #assert_not_equal @d['_rev'], r['_rev']
         
     | 
| 
       52 
     | 
    
         
            -
             
     | 
| 
       53 
     | 
    
         
            -
                assert_equal 'this is a message', @c.get('thedoc/message')
         
     | 
| 
       54 
     | 
    
         
            -
             
     | 
| 
       55 
     | 
    
         
            -
                assert_not_equal @d['_rev'], @c.get('thedoc')['_rev']
         
     | 
| 
       56 
     | 
    
         
            -
             
     | 
| 
       57 
     | 
    
         
            -
                r = @c.http.get('/rufus_jig_test/thedoc/message', :raw => true)
         
     | 
| 
       58 
     | 
    
         
            -
             
     | 
| 
       59 
     | 
    
         
            -
                assert_equal 200, r.status
         
     | 
| 
       60 
     | 
    
         
            -
                assert_equal 'text/plain', r.headers['Content-Type']
         
     | 
| 
       61 
     | 
    
         
            -
              end
         
     | 
| 
       62 
     | 
    
         
            -
             
     | 
| 
       63 
     | 
    
         
            -
              def test_attach_with_doc
         
     | 
| 
       64 
     | 
    
         
            -
             
     | 
| 
       65 
     | 
    
         
            -
                @c.attach(
         
     | 
| 
       66 
     | 
    
         
            -
                  @d, 'message', 'this is a message', :content_type => 'text/plain')
         
     | 
| 
       67 
     | 
    
         
            -
             
     | 
| 
       68 
     | 
    
         
            -
                assert_equal 'this is a message', @c.get('thedoc/message')
         
     | 
| 
       69 
     | 
    
         
            -
              end
         
     | 
| 
       70 
     | 
    
         
            -
             
     | 
| 
       71 
     | 
    
         
            -
              def test_wrong_rev_on_attach
         
     | 
| 
       72 
     | 
    
         
            -
             
     | 
| 
       73 
     | 
    
         
            -
                assert_raise Rufus::Jig::HttpError do
         
     | 
| 
       74 
     | 
    
         
            -
                  @c.attach(
         
     | 
| 
       75 
     | 
    
         
            -
                    'thedoc', '1-745aeb1d8eccafa88e635b813507608c',
         
     | 
| 
       76 
     | 
    
         
            -
                    'message', 'this is a message',
         
     | 
| 
       77 
     | 
    
         
            -
                    :content_type => 'text/plain')
         
     | 
| 
       78 
     | 
    
         
            -
                end
         
     | 
| 
       79 
     | 
    
         
            -
              end
         
     | 
| 
       80 
     | 
    
         
            -
             
     | 
| 
       81 
     | 
    
         
            -
              def test_attach_image
         
     | 
| 
       82 
     | 
    
         
            -
             
     | 
| 
       83 
     | 
    
         
            -
                image = File.read(File.join(File.dirname(__FILE__), 'tweet.png'))
         
     | 
| 
       84 
     | 
    
         
            -
             
     | 
| 
       85 
     | 
    
         
            -
                @c.attach(
         
     | 
| 
       86 
     | 
    
         
            -
                  'thedoc', @d['_rev'], 'image', image, :content_type => 'image/png')
         
     | 
| 
       87 
     | 
    
         
            -
             
     | 
| 
       88 
     | 
    
         
            -
                r = @c.http.get('/rufus_jig_test/thedoc/image', :raw => true)
         
     | 
| 
       89 
     | 
    
         
            -
             
     | 
| 
       90 
     | 
    
         
            -
                assert_equal 200, r.status
         
     | 
| 
       91 
     | 
    
         
            -
                assert_equal 'image/png', r.headers['Content-Type']
         
     | 
| 
       92 
     | 
    
         
            -
             
     | 
| 
       93 
     | 
    
         
            -
                #File.open('out.png', 'wb') { |f| f.write(r.body) }
         
     | 
| 
       94 
     | 
    
         
            -
              end
         
     | 
| 
       95 
     | 
    
         
            -
             
     | 
| 
       96 
     | 
    
         
            -
              def test_detach
         
     | 
| 
       97 
     | 
    
         
            -
             
     | 
| 
       98 
     | 
    
         
            -
                attach_image
         
     | 
| 
       99 
     | 
    
         
            -
             
     | 
| 
       100 
     | 
    
         
            -
                d = @c.get('thedoc')
         
     | 
| 
       101 
     | 
    
         
            -
             
     | 
| 
       102 
     | 
    
         
            -
                r = @c.detach('thedoc', d['_rev'], 'image')
         
     | 
| 
       103 
     | 
    
         
            -
             
     | 
| 
       104 
     | 
    
         
            -
                assert_not_equal d['_rev'], r['_rev']
         
     | 
| 
       105 
     | 
    
         
            -
             
     | 
| 
       106 
     | 
    
         
            -
                assert_nil @c.get('thedoc/image')
         
     | 
| 
       107 
     | 
    
         
            -
              end
         
     | 
| 
       108 
     | 
    
         
            -
             
     | 
| 
       109 
     | 
    
         
            -
              def test_detach_fail
         
     | 
| 
       110 
     | 
    
         
            -
             
     | 
| 
       111 
     | 
    
         
            -
                attach_image
         
     | 
| 
       112 
     | 
    
         
            -
             
     | 
| 
       113 
     | 
    
         
            -
                assert_equal true, @c.detach(@d, 'image')
         
     | 
| 
       114 
     | 
    
         
            -
              end
         
     | 
| 
       115 
     | 
    
         
            -
             
     | 
| 
       116 
     | 
    
         
            -
              protected
         
     | 
| 
       117 
     | 
    
         
            -
             
     | 
| 
       118 
     | 
    
         
            -
              def attach_image
         
     | 
| 
       119 
     | 
    
         
            -
             
     | 
| 
       120 
     | 
    
         
            -
                image = File.read(File.join(File.dirname(__FILE__), 'tweet.png'))
         
     | 
| 
       121 
     | 
    
         
            -
             
     | 
| 
       122 
     | 
    
         
            -
                @c.attach(
         
     | 
| 
       123 
     | 
    
         
            -
                  'thedoc', @d['_rev'], 'image', image, :content_type => 'image/png')
         
     | 
| 
       124 
     | 
    
         
            -
              end
         
     | 
| 
       125 
     | 
    
         
            -
            end
         
     | 
| 
       126 
     | 
    
         
            -
             
     | 
| 
         @@ -1,92 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            # encoding: UTF-8
         
     | 
| 
       2 
     | 
    
         
            -
             
     | 
| 
       3 
     | 
    
         
            -
            #
         
     | 
| 
       4 
     | 
    
         
            -
            # testing rufus-jig
         
     | 
| 
       5 
     | 
    
         
            -
            #
         
     | 
| 
       6 
     | 
    
         
            -
            # Tue May 11 09:52:37 JST 2010
         
     | 
| 
       7 
     | 
    
         
            -
            #
         
     | 
| 
       8 
     | 
    
         
            -
             
     | 
| 
       9 
     | 
    
         
            -
            require File.join(File.dirname(__FILE__), 'couch_base')
         
     | 
| 
       10 
     | 
    
         
            -
             
     | 
| 
       11 
     | 
    
         
            -
             
     | 
| 
       12 
     | 
    
         
            -
            class CtCouchDbContinuousTest < Test::Unit::TestCase
         
     | 
| 
       13 
     | 
    
         
            -
             
     | 
| 
       14 
     | 
    
         
            -
              def setup
         
     | 
| 
       15 
     | 
    
         
            -
             
     | 
| 
       16 
     | 
    
         
            -
                h = Rufus::Jig::Http.new(couch_url)
         
     | 
| 
       17 
     | 
    
         
            -
             
     | 
| 
       18 
     | 
    
         
            -
                begin
         
     | 
| 
       19 
     | 
    
         
            -
                  h.delete('/rufus_jig_test')
         
     | 
| 
       20 
     | 
    
         
            -
                rescue Exception => e
         
     | 
| 
       21 
     | 
    
         
            -
                  #p e
         
     | 
| 
       22 
     | 
    
         
            -
                end
         
     | 
| 
       23 
     | 
    
         
            -
                h.put('/rufus_jig_test', '')
         
     | 
| 
       24 
     | 
    
         
            -
                h.close
         
     | 
| 
       25 
     | 
    
         
            -
             
     | 
| 
       26 
     | 
    
         
            -
                @c = Rufus::Jig::Couch.new(couch_url, 'rufus_jig_test')
         
     | 
| 
       27 
     | 
    
         
            -
              end
         
     | 
| 
       28 
     | 
    
         
            -
             
     | 
| 
       29 
     | 
    
         
            -
              def teardown
         
     | 
| 
       30 
     | 
    
         
            -
             
     | 
| 
       31 
     | 
    
         
            -
                @c.close
         
     | 
| 
       32 
     | 
    
         
            -
              end
         
     | 
| 
       33 
     | 
    
         
            -
             
     | 
| 
       34 
     | 
    
         
            -
              def test_on_change
         
     | 
| 
       35 
     | 
    
         
            -
             
     | 
| 
       36 
     | 
    
         
            -
                stack = []
         
     | 
| 
       37 
     | 
    
         
            -
             
     | 
| 
       38 
     | 
    
         
            -
                t = Thread.new do
         
     | 
| 
       39 
     | 
    
         
            -
                  @c.on_change { |doc_id, deleted| stack << doc_id }
         
     | 
| 
       40 
     | 
    
         
            -
                end
         
     | 
| 
       41 
     | 
    
         
            -
             
     | 
| 
       42 
     | 
    
         
            -
                @c.put('_id' => 'angel0', 'name' => 'samael')
         
     | 
| 
       43 
     | 
    
         
            -
                @c.put('_id' => 'angel1', 'name' => 'raphael')
         
     | 
| 
       44 
     | 
    
         
            -
             
     | 
| 
       45 
     | 
    
         
            -
                sleep 0.150
         
     | 
| 
       46 
     | 
    
         
            -
                t.kill
         
     | 
| 
       47 
     | 
    
         
            -
             
     | 
| 
       48 
     | 
    
         
            -
                assert_equal 2, stack.size
         
     | 
| 
       49 
     | 
    
         
            -
              end
         
     | 
| 
       50 
     | 
    
         
            -
             
     | 
| 
       51 
     | 
    
         
            -
              def test_on_change_include_docs
         
     | 
| 
       52 
     | 
    
         
            -
             
     | 
| 
       53 
     | 
    
         
            -
                stack = []
         
     | 
| 
       54 
     | 
    
         
            -
             
     | 
| 
       55 
     | 
    
         
            -
                Thread.abort_on_exception = true
         
     | 
| 
       56 
     | 
    
         
            -
             
     | 
| 
       57 
     | 
    
         
            -
                t = Thread.new do
         
     | 
| 
       58 
     | 
    
         
            -
                  @c.on_change { |doc_id, deleted, doc| stack << doc }
         
     | 
| 
       59 
     | 
    
         
            -
                end
         
     | 
| 
       60 
     | 
    
         
            -
             
     | 
| 
       61 
     | 
    
         
            -
                @c.put('_id' => 'angel2', 'name' => 'samael')
         
     | 
| 
       62 
     | 
    
         
            -
                @c.put('_id' => 'angel3', 'name' => 'ゆきひろ')
         
     | 
| 
       63 
     | 
    
         
            -
             
     | 
| 
       64 
     | 
    
         
            -
                sleep 0.150
         
     | 
| 
       65 
     | 
    
         
            -
                t.kill
         
     | 
| 
       66 
     | 
    
         
            -
             
     | 
| 
       67 
     | 
    
         
            -
                assert_equal 'ゆきひろ', stack[1]['name']
         
     | 
| 
       68 
     | 
    
         
            -
              end
         
     | 
| 
       69 
     | 
    
         
            -
             
     | 
| 
       70 
     | 
    
         
            -
              def test_on_change_include_docs_with_deleted
         
     | 
| 
       71 
     | 
    
         
            -
             
     | 
| 
       72 
     | 
    
         
            -
                stack = []
         
     | 
| 
       73 
     | 
    
         
            -
             
     | 
| 
       74 
     | 
    
         
            -
                Thread.abort_on_exception = true
         
     | 
| 
       75 
     | 
    
         
            -
             
     | 
| 
       76 
     | 
    
         
            -
                t = Thread.new do
         
     | 
| 
       77 
     | 
    
         
            -
                  @c.on_change { |doc_id, deleted, doc| stack << [ doc_id, deleted ] }
         
     | 
| 
       78 
     | 
    
         
            -
                end
         
     | 
| 
       79 
     | 
    
         
            -
             
     | 
| 
       80 
     | 
    
         
            -
                @c.put('_id' => 'angel4', 'name' => 'samael')
         
     | 
| 
       81 
     | 
    
         
            -
                sleep 0.077
         
     | 
| 
       82 
     | 
    
         
            -
                @c.delete(@c.get('angel4'))
         
     | 
| 
       83 
     | 
    
         
            -
             
     | 
| 
       84 
     | 
    
         
            -
                sleep 0.154
         
     | 
| 
       85 
     | 
    
         
            -
                t.kill
         
     | 
| 
       86 
     | 
    
         
            -
             
     | 
| 
       87 
     | 
    
         
            -
                assert(
         
     | 
| 
       88 
     | 
    
         
            -
                  [["angel4", false], ["angel4", true]] == stack ||
         
     | 
| 
       89 
     | 
    
         
            -
                  [["angel4", true]] == stack)
         
     | 
| 
       90 
     | 
    
         
            -
              end
         
     | 
| 
       91 
     | 
    
         
            -
            end
         
     | 
| 
       92 
     | 
    
         
            -
             
     | 
    
        data/test/cut_0_auth_couch.rb
    DELETED
    
    | 
         @@ -1,62 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
             
     | 
| 
       2 
     | 
    
         
            -
            #
         
     | 
| 
       3 
     | 
    
         
            -
            # testing rufus-jig
         
     | 
| 
       4 
     | 
    
         
            -
            #
         
     | 
| 
       5 
     | 
    
         
            -
            # Sun Sep 26 18:26:15 JST 2010
         
     | 
| 
       6 
     | 
    
         
            -
            #
         
     | 
| 
       7 
     | 
    
         
            -
             
     | 
| 
       8 
     | 
    
         
            -
            require File.join(File.dirname(__FILE__), 'base')
         
     | 
| 
       9 
     | 
    
         
            -
             
     | 
| 
       10 
     | 
    
         
            -
             
     | 
| 
       11 
     | 
    
         
            -
            class UtAuthTest < Test::Unit::TestCase
         
     | 
| 
       12 
     | 
    
         
            -
             
     | 
| 
       13 
     | 
    
         
            -
              def setup
         
     | 
| 
       14 
     | 
    
         
            -
                @c = Rufus::Jig::Couch.new(
         
     | 
| 
       15 
     | 
    
         
            -
                  '127.0.0.1', 4567, 'tcouch', :basic_auth => %w[ admin nimda ])
         
     | 
| 
       16 
     | 
    
         
            -
              end
         
     | 
| 
       17 
     | 
    
         
            -
              def teardown
         
     | 
| 
       18 
     | 
    
         
            -
                @c.close
         
     | 
| 
       19 
     | 
    
         
            -
              end
         
     | 
| 
       20 
     | 
    
         
            -
             
     | 
| 
       21 
     | 
    
         
            -
              def test_denied
         
     | 
| 
       22 
     | 
    
         
            -
             
     | 
| 
       23 
     | 
    
         
            -
                c = Rufus::Jig::Couch.new('127.0.0.1', 4567, 'tcouch')
         
     | 
| 
       24 
     | 
    
         
            -
             
     | 
| 
       25 
     | 
    
         
            -
                assert_raise Rufus::Jig::HttpError do
         
     | 
| 
       26 
     | 
    
         
            -
                  c.get('.')
         
     | 
| 
       27 
     | 
    
         
            -
                end
         
     | 
| 
       28 
     | 
    
         
            -
              end
         
     | 
| 
       29 
     | 
    
         
            -
             
     | 
| 
       30 
     | 
    
         
            -
              def test_authorized
         
     | 
| 
       31 
     | 
    
         
            -
             
     | 
| 
       32 
     | 
    
         
            -
                assert_equal({ 'id' => 'nada' }, @c.get('.'))
         
     | 
| 
       33 
     | 
    
         
            -
              end
         
     | 
| 
       34 
     | 
    
         
            -
             
     | 
| 
       35 
     | 
    
         
            -
              def test_on_change
         
     | 
| 
       36 
     | 
    
         
            -
             
     | 
| 
       37 
     | 
    
         
            -
                res = nil
         
     | 
| 
       38 
     | 
    
         
            -
             
     | 
| 
       39 
     | 
    
         
            -
                t = Thread.new {
         
     | 
| 
       40 
     | 
    
         
            -
                  @c.on_change do |id, deleted, doc|
         
     | 
| 
       41 
     | 
    
         
            -
                    res = [ id, deleted, doc ]
         
     | 
| 
       42 
     | 
    
         
            -
                  end
         
     | 
| 
       43 
     | 
    
         
            -
                }
         
     | 
| 
       44 
     | 
    
         
            -
             
     | 
| 
       45 
     | 
    
         
            -
                sleep 0.200
         
     | 
| 
       46 
     | 
    
         
            -
             
     | 
| 
       47 
     | 
    
         
            -
                t.kill
         
     | 
| 
       48 
     | 
    
         
            -
             
     | 
| 
       49 
     | 
    
         
            -
                assert_equal [ 'x', false, { 'hello' => 'world' } ], res
         
     | 
| 
       50 
     | 
    
         
            -
              end
         
     | 
| 
       51 
     | 
    
         
            -
             
     | 
| 
       52 
     | 
    
         
            -
              def test_on_change_denied
         
     | 
| 
       53 
     | 
    
         
            -
             
     | 
| 
       54 
     | 
    
         
            -
                c = Rufus::Jig::Couch.new('127.0.0.1', 4567, 'tcouch')
         
     | 
| 
       55 
     | 
    
         
            -
             
     | 
| 
       56 
     | 
    
         
            -
                assert_raise Rufus::Jig::HttpError do
         
     | 
| 
       57 
     | 
    
         
            -
                  c.on_change do |id, deleted, doc|
         
     | 
| 
       58 
     | 
    
         
            -
                  end
         
     | 
| 
       59 
     | 
    
         
            -
                end
         
     | 
| 
       60 
     | 
    
         
            -
              end
         
     | 
| 
       61 
     | 
    
         
            -
            end
         
     | 
| 
       62 
     | 
    
         
            -
             
     | 
    
        data/test/test.rb
    DELETED
    
    | 
         @@ -1,28 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
             
     | 
| 
       2 
     | 
    
         
            -
            #
         
     | 
| 
       3 
     | 
    
         
            -
            # testing rufus-jig
         
     | 
| 
       4 
     | 
    
         
            -
            #
         
     | 
| 
       5 
     | 
    
         
            -
            # Sat Oct 31 22:44:08 JST 2009
         
     | 
| 
       6 
     | 
    
         
            -
            #
         
     | 
| 
       7 
     | 
    
         
            -
             
     | 
| 
       8 
     | 
    
         
            -
            def load_tests (prefix)
         
     | 
| 
       9 
     | 
    
         
            -
             
     | 
| 
       10 
     | 
    
         
            -
              dp = File.dirname(__FILE__)
         
     | 
| 
       11 
     | 
    
         
            -
             
     | 
| 
       12 
     | 
    
         
            -
              Dir.new(dp).entries.select { |e|
         
     | 
| 
       13 
     | 
    
         
            -
                e.match(/^#{prefix}\_.*\.rb$/)
         
     | 
| 
       14 
     | 
    
         
            -
              }.sort.each { |e|
         
     | 
| 
       15 
     | 
    
         
            -
                load("#{dp}/#{e}")
         
     | 
| 
       16 
     | 
    
         
            -
              }
         
     | 
| 
       17 
     | 
    
         
            -
            end
         
     | 
| 
       18 
     | 
    
         
            -
             
     | 
| 
       19 
     | 
    
         
            -
            set = if ARGV.include?('--all')
         
     | 
| 
       20 
     | 
    
         
            -
              %w[ ut ct ]
         
     | 
| 
       21 
     | 
    
         
            -
            elsif ARGV.include?('--couch')
         
     | 
| 
       22 
     | 
    
         
            -
              %w[ ct ]
         
     | 
| 
       23 
     | 
    
         
            -
            else
         
     | 
| 
       24 
     | 
    
         
            -
              %w[ ut cut ]
         
     | 
| 
       25 
     | 
    
         
            -
            end
         
     | 
| 
       26 
     | 
    
         
            -
             
     | 
| 
       27 
     | 
    
         
            -
            set.each { |prefix| load_tests(prefix) }
         
     | 
| 
       28 
     | 
    
         
            -
             
     | 
    
        data/test/to.sh
    DELETED
    
    | 
         @@ -1,25 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            #!/bin/bash
         
     | 
| 
       2 
     | 
    
         
            -
             
     | 
| 
       3 
     | 
    
         
            -
            echo
         
     | 
| 
       4 
     | 
    
         
            -
            echo "================================================================================"
         
     | 
| 
       5 
     | 
    
         
            -
            echo "ruby test/ut_7_http_get_timeout.rb -- --patron"
         
     | 
| 
       6 
     | 
    
         
            -
            ruby -v
         
     | 
| 
       7 
     | 
    
         
            -
            echo
         
     | 
| 
       8 
     | 
    
         
            -
            ruby test/ut_7_http_get_timeout.rb -- --patron
         
     | 
| 
       9 
     | 
    
         
            -
             
     | 
| 
       10 
     | 
    
         
            -
            echo
         
     | 
| 
       11 
     | 
    
         
            -
            echo "================================================================================"
         
     | 
| 
       12 
     | 
    
         
            -
            echo "ruby test/ut_7_http_get_timeout.rb -- --net"
         
     | 
| 
       13 
     | 
    
         
            -
            ruby -v
         
     | 
| 
       14 
     | 
    
         
            -
            echo
         
     | 
| 
       15 
     | 
    
         
            -
            ruby test/ut_7_http_get_timeout.rb -- --net
         
     | 
| 
       16 
     | 
    
         
            -
             
     | 
| 
       17 
     | 
    
         
            -
            echo
         
     | 
| 
       18 
     | 
    
         
            -
            echo "================================================================================"
         
     | 
| 
       19 
     | 
    
         
            -
            echo "ruby test/ut_7_http_get_timeout.rb -- --em"
         
     | 
| 
       20 
     | 
    
         
            -
            ruby -v
         
     | 
| 
       21 
     | 
    
         
            -
            echo
         
     | 
| 
       22 
     | 
    
         
            -
            ruby test/ut_7_http_get_timeout.rb -- --em
         
     | 
| 
       23 
     | 
    
         
            -
             
     | 
| 
       24 
     | 
    
         
            -
            echo
         
     | 
| 
       25 
     | 
    
         
            -
             
     | 
    
        data/test/tt_0_get_timeout.rb
    DELETED
    
    | 
         @@ -1,92 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
             
     | 
| 
       2 
     | 
    
         
            -
            #
         
     | 
| 
       3 
     | 
    
         
            -
            # testing rufus-jig
         
     | 
| 
       4 
     | 
    
         
            -
            #
         
     | 
| 
       5 
     | 
    
         
            -
            # Tue Mar  9 11:09:43 JST 2010
         
     | 
| 
       6 
     | 
    
         
            -
            #
         
     | 
| 
       7 
     | 
    
         
            -
             
     | 
| 
       8 
     | 
    
         
            -
            require File.join(File.dirname(__FILE__), 'base')
         
     | 
| 
       9 
     | 
    
         
            -
             
     | 
| 
       10 
     | 
    
         
            -
             
     | 
| 
       11 
     | 
    
         
            -
            class UtHttpGetTimeoutTest < Test::Unit::TestCase
         
     | 
| 
       12 
     | 
    
         
            -
             
     | 
| 
       13 
     | 
    
         
            -
              #def setup
         
     | 
| 
       14 
     | 
    
         
            -
              #end
         
     | 
| 
       15 
     | 
    
         
            -
              def teardown
         
     | 
| 
       16 
     | 
    
         
            -
                @h.close
         
     | 
| 
       17 
     | 
    
         
            -
              end
         
     | 
| 
       18 
     | 
    
         
            -
             
     | 
| 
       19 
     | 
    
         
            -
              def test_timeout_after_1
         
     | 
| 
       20 
     | 
    
         
            -
             
     | 
| 
       21 
     | 
    
         
            -
                @h = Rufus::Jig::Http.new('127.0.0.1', 4567, :timeout => 1)
         
     | 
| 
       22 
     | 
    
         
            -
             
     | 
| 
       23 
     | 
    
         
            -
                t = nil
         
     | 
| 
       24 
     | 
    
         
            -
             
     | 
| 
       25 
     | 
    
         
            -
                assert_raise Rufus::Jig::TimeoutError do
         
     | 
| 
       26 
     | 
    
         
            -
                  t = Time.now
         
     | 
| 
       27 
     | 
    
         
            -
                  @h.get('/later')
         
     | 
| 
       28 
     | 
    
         
            -
                end
         
     | 
| 
       29 
     | 
    
         
            -
             
     | 
| 
       30 
     | 
    
         
            -
                d = Time.now - t; dd = 4.0; assert d < dd, "after #{d} seconds (#{dd})"
         
     | 
| 
       31 
     | 
    
         
            -
                  # grr, em-http-request forces me to use 4.0 (2.0 for the others)
         
     | 
| 
       32 
     | 
    
         
            -
              end
         
     | 
| 
       33 
     | 
    
         
            -
             
     | 
| 
       34 
     | 
    
         
            -
              def test_timeout_after_5
         
     | 
| 
       35 
     | 
    
         
            -
             
     | 
| 
       36 
     | 
    
         
            -
                @h = Rufus::Jig::Http.new('127.0.0.1', 4567)
         
     | 
| 
       37 
     | 
    
         
            -
             
     | 
| 
       38 
     | 
    
         
            -
                t = nil
         
     | 
| 
       39 
     | 
    
         
            -
             
     | 
| 
       40 
     | 
    
         
            -
                assert_raise Rufus::Jig::TimeoutError do
         
     | 
| 
       41 
     | 
    
         
            -
                  t = Time.now
         
     | 
| 
       42 
     | 
    
         
            -
                  @h.get('/later')
         
     | 
| 
       43 
     | 
    
         
            -
                end
         
     | 
| 
       44 
     | 
    
         
            -
             
     | 
| 
       45 
     | 
    
         
            -
                d = Time.now - t; dd = 6.0; assert d < dd, "after #{d} seconds (#{dd})"
         
     | 
| 
       46 
     | 
    
         
            -
              end
         
     | 
| 
       47 
     | 
    
         
            -
             
     | 
| 
       48 
     | 
    
         
            -
              def test_timeout_after_15
         
     | 
| 
       49 
     | 
    
         
            -
             
     | 
| 
       50 
     | 
    
         
            -
                @h = Rufus::Jig::Http.new('127.0.0.1', 4567, :timeout => 15)
         
     | 
| 
       51 
     | 
    
         
            -
             
     | 
| 
       52 
     | 
    
         
            -
                t = Time.now
         
     | 
| 
       53 
     | 
    
         
            -
             
     | 
| 
       54 
     | 
    
         
            -
                r = begin
         
     | 
| 
       55 
     | 
    
         
            -
                  @h.get('/later')
         
     | 
| 
       56 
     | 
    
         
            -
                rescue Rufus::Jig::TimeoutError => e
         
     | 
| 
       57 
     | 
    
         
            -
                  puts " :( timed out after #{Time.now - t} seconds"
         
     | 
| 
       58 
     | 
    
         
            -
                  flunk
         
     | 
| 
       59 
     | 
    
         
            -
                end
         
     | 
| 
       60 
     | 
    
         
            -
             
     | 
| 
       61 
     | 
    
         
            -
                assert_equal 'later', r
         
     | 
| 
       62 
     | 
    
         
            -
                d = Time.now - t; dd = 8.0; assert d < dd, "after #{d} seconds (#{dd})"
         
     | 
| 
       63 
     | 
    
         
            -
              end
         
     | 
| 
       64 
     | 
    
         
            -
             
     | 
| 
       65 
     | 
    
         
            -
              def test_never_timeout
         
     | 
| 
       66 
     | 
    
         
            -
             
     | 
| 
       67 
     | 
    
         
            -
                @h = Rufus::Jig::Http.new('127.0.0.1', 4567, :timeout => -1)
         
     | 
| 
       68 
     | 
    
         
            -
             
     | 
| 
       69 
     | 
    
         
            -
                t = Time.now
         
     | 
| 
       70 
     | 
    
         
            -
             
     | 
| 
       71 
     | 
    
         
            -
                r = @h.get('/later')
         
     | 
| 
       72 
     | 
    
         
            -
             
     | 
| 
       73 
     | 
    
         
            -
                assert_equal 'later', r
         
     | 
| 
       74 
     | 
    
         
            -
                d = Time.now - t; dd = 8.0; assert d < dd, "after #{d} seconds (#{dd})"
         
     | 
| 
       75 
     | 
    
         
            -
              end
         
     | 
| 
       76 
     | 
    
         
            -
             
     | 
| 
       77 
     | 
    
         
            -
              def test_request_timeout_after_1
         
     | 
| 
       78 
     | 
    
         
            -
             
     | 
| 
       79 
     | 
    
         
            -
                @h = Rufus::Jig::Http.new('127.0.0.1', 4567, :timeout => 15)
         
     | 
| 
       80 
     | 
    
         
            -
             
     | 
| 
       81 
     | 
    
         
            -
                t = nil
         
     | 
| 
       82 
     | 
    
         
            -
             
     | 
| 
       83 
     | 
    
         
            -
                assert_raise Rufus::Jig::TimeoutError do
         
     | 
| 
       84 
     | 
    
         
            -
                  t = Time.now
         
     | 
| 
       85 
     | 
    
         
            -
                  @h.get('/later', :timeout => 1)
         
     | 
| 
       86 
     | 
    
         
            -
                end
         
     | 
| 
       87 
     | 
    
         
            -
             
     | 
| 
       88 
     | 
    
         
            -
                d = Time.now - t; dd = 4.0; assert d < dd, "after #{d} seconds (#{dd})"
         
     | 
| 
       89 
     | 
    
         
            -
                  # grr, em-http-request forces me to use 4.0 (2.0 for the others)
         
     | 
| 
       90 
     | 
    
         
            -
              end
         
     | 
| 
       91 
     | 
    
         
            -
            end
         
     | 
| 
       92 
     | 
    
         
            -
             
     | 
    
        data/test/ut_0_http_get.rb
    DELETED
    
    | 
         @@ -1,191 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            # encoding: utf-8
         
     | 
| 
       2 
     | 
    
         
            -
             
     | 
| 
       3 
     | 
    
         
            -
            #
         
     | 
| 
       4 
     | 
    
         
            -
            # testing rufus-jig
         
     | 
| 
       5 
     | 
    
         
            -
            #
         
     | 
| 
       6 
     | 
    
         
            -
            # Fri Oct 30 17:57:15 JST 2009
         
     | 
| 
       7 
     | 
    
         
            -
            #
         
     | 
| 
       8 
     | 
    
         
            -
             
     | 
| 
       9 
     | 
    
         
            -
            require File.join(File.dirname(__FILE__), 'base')
         
     | 
| 
       10 
     | 
    
         
            -
             
     | 
| 
       11 
     | 
    
         
            -
             
     | 
| 
       12 
     | 
    
         
            -
            class UtHttpGetTest < Test::Unit::TestCase
         
     | 
| 
       13 
     | 
    
         
            -
             
     | 
| 
       14 
     | 
    
         
            -
              def setup
         
     | 
| 
       15 
     | 
    
         
            -
                @h = Rufus::Jig::Http.new('127.0.0.1', 4567)
         
     | 
| 
       16 
     | 
    
         
            -
              end
         
     | 
| 
       17 
     | 
    
         
            -
              def teardown
         
     | 
| 
       18 
     | 
    
         
            -
                @h.close
         
     | 
| 
       19 
     | 
    
         
            -
              end
         
     | 
| 
       20 
     | 
    
         
            -
             
     | 
| 
       21 
     | 
    
         
            -
              def test_get_root
         
     | 
| 
       22 
     | 
    
         
            -
             
     | 
| 
       23 
     | 
    
         
            -
                r = @h.get('/')
         
     | 
| 
       24 
     | 
    
         
            -
             
     | 
| 
       25 
     | 
    
         
            -
                assert_equal 'hello', r
         
     | 
| 
       26 
     | 
    
         
            -
              end
         
     | 
| 
       27 
     | 
    
         
            -
             
     | 
| 
       28 
     | 
    
         
            -
              def test_get
         
     | 
| 
       29 
     | 
    
         
            -
             
     | 
| 
       30 
     | 
    
         
            -
                r = @h.get('/document')
         
     | 
| 
       31 
     | 
    
         
            -
             
     | 
| 
       32 
     | 
    
         
            -
                assert_equal Hash, r.class
         
     | 
| 
       33 
     | 
    
         
            -
                assert_equal 'Mercedes-Benz', r['car']
         
     | 
| 
       34 
     | 
    
         
            -
             
     | 
| 
       35 
     | 
    
         
            -
                assert_equal 0, @h.cache.size
         
     | 
| 
       36 
     | 
    
         
            -
              end
         
     | 
| 
       37 
     | 
    
         
            -
             
     | 
| 
       38 
     | 
    
         
            -
              def test_get_raw
         
     | 
| 
       39 
     | 
    
         
            -
             
     | 
| 
       40 
     | 
    
         
            -
                r = @h.get('/document', :raw => true)
         
     | 
| 
       41 
     | 
    
         
            -
             
     | 
| 
       42 
     | 
    
         
            -
                assert_equal 200, r.status
         
     | 
| 
       43 
     | 
    
         
            -
                assert_equal "{\"car\":\"Mercedes-Benz\"}", r.body
         
     | 
| 
       44 
     | 
    
         
            -
              end
         
     | 
| 
       45 
     | 
    
         
            -
             
     | 
| 
       46 
     | 
    
         
            -
              def test_get_404
         
     | 
| 
       47 
     | 
    
         
            -
             
     | 
| 
       48 
     | 
    
         
            -
                r = @h.get('/missing')
         
     | 
| 
       49 
     | 
    
         
            -
             
     | 
| 
       50 
     | 
    
         
            -
                assert_nil r
         
     | 
| 
       51 
     | 
    
         
            -
              end
         
     | 
| 
       52 
     | 
    
         
            -
             
     | 
| 
       53 
     | 
    
         
            -
              def test_get_404_raw
         
     | 
| 
       54 
     | 
    
         
            -
             
     | 
| 
       55 
     | 
    
         
            -
                r = @h.get('/missing', :raw => true)
         
     | 
| 
       56 
     | 
    
         
            -
             
     | 
| 
       57 
     | 
    
         
            -
                assert_equal 404, r.status
         
     | 
| 
       58 
     | 
    
         
            -
              end
         
     | 
| 
       59 
     | 
    
         
            -
             
     | 
| 
       60 
     | 
    
         
            -
              def test_get_500
         
     | 
| 
       61 
     | 
    
         
            -
             
     | 
| 
       62 
     | 
    
         
            -
                assert_raise Rufus::Jig::HttpError do
         
     | 
| 
       63 
     | 
    
         
            -
                  @h.get('/server_error')
         
     | 
| 
       64 
     | 
    
         
            -
                end
         
     | 
| 
       65 
     | 
    
         
            -
             
     | 
| 
       66 
     | 
    
         
            -
                assert_equal 500, @h.last_response.status
         
     | 
| 
       67 
     | 
    
         
            -
              end
         
     | 
| 
       68 
     | 
    
         
            -
             
     | 
| 
       69 
     | 
    
         
            -
              def test_get_500_raw
         
     | 
| 
       70 
     | 
    
         
            -
             
     | 
| 
       71 
     | 
    
         
            -
                r = @h.get('/server_error', :raw => true)
         
     | 
| 
       72 
     | 
    
         
            -
             
     | 
| 
       73 
     | 
    
         
            -
                assert_equal 500, r.status
         
     | 
| 
       74 
     | 
    
         
            -
              end
         
     | 
| 
       75 
     | 
    
         
            -
             
     | 
| 
       76 
     | 
    
         
            -
              def test_get_with_accept
         
     | 
| 
       77 
     | 
    
         
            -
             
     | 
| 
       78 
     | 
    
         
            -
                r = @h.get('/document_accept', :accept => 'text/plain')
         
     | 
| 
       79 
     | 
    
         
            -
             
     | 
| 
       80 
     | 
    
         
            -
                assert_equal '{"car":"Saab"}', r
         
     | 
| 
       81 
     | 
    
         
            -
             
     | 
| 
       82 
     | 
    
         
            -
                r = @h.get('/document_accept', :accept => 'application/json')
         
     | 
| 
       83 
     | 
    
         
            -
             
     | 
| 
       84 
     | 
    
         
            -
                assert_equal Hash, r.class
         
     | 
| 
       85 
     | 
    
         
            -
                assert_equal 'Saab', r['car']
         
     | 
| 
       86 
     | 
    
         
            -
             
     | 
| 
       87 
     | 
    
         
            -
                assert_equal 0, @h.cache.size
         
     | 
| 
       88 
     | 
    
         
            -
             
     | 
| 
       89 
     | 
    
         
            -
                r = @h.get('/document_accept', :accept => :json)
         
     | 
| 
       90 
     | 
    
         
            -
             
     | 
| 
       91 
     | 
    
         
            -
                assert_equal Hash, r.class
         
     | 
| 
       92 
     | 
    
         
            -
              end
         
     | 
| 
       93 
     | 
    
         
            -
             
     | 
| 
       94 
     | 
    
         
            -
              def test_get_force_json
         
     | 
| 
       95 
     | 
    
         
            -
             
     | 
| 
       96 
     | 
    
         
            -
                r = @h.get('/document_json_plain', :accept => :json)
         
     | 
| 
       97 
     | 
    
         
            -
             
     | 
| 
       98 
     | 
    
         
            -
                assert_equal('{"car":"Peugeot"}', r)
         
     | 
| 
       99 
     | 
    
         
            -
             
     | 
| 
       100 
     | 
    
         
            -
                r = @h.get('/document_json_plain', :force_json => true)
         
     | 
| 
       101 
     | 
    
         
            -
             
     | 
| 
       102 
     | 
    
         
            -
                assert_equal({ 'car' => 'Peugeot' }, r)
         
     | 
| 
       103 
     | 
    
         
            -
              end
         
     | 
| 
       104 
     | 
    
         
            -
             
     | 
| 
       105 
     | 
    
         
            -
              def test_conditional_get
         
     | 
| 
       106 
     | 
    
         
            -
             
     | 
| 
       107 
     | 
    
         
            -
                b = @h.get('/document_with_etag')
         
     | 
| 
       108 
     | 
    
         
            -
             
     | 
| 
       109 
     | 
    
         
            -
                etag = @h.last_response.headers['Etag']
         
     | 
| 
       110 
     | 
    
         
            -
             
     | 
| 
       111 
     | 
    
         
            -
                assert_equal Hash, b.class
         
     | 
| 
       112 
     | 
    
         
            -
                assert_equal 'Peugeot', b['car']
         
     | 
| 
       113 
     | 
    
         
            -
             
     | 
| 
       114 
     | 
    
         
            -
                assert_equal 200, @h.last_response.status
         
     | 
| 
       115 
     | 
    
         
            -
             
     | 
| 
       116 
     | 
    
         
            -
                assert_equal({"/document_with_etag"=>["\"123456123456\"", {"car"=>"Peugeot"}]}, @h.cache)
         
     | 
| 
       117 
     | 
    
         
            -
             
     | 
| 
       118 
     | 
    
         
            -
                r = @h.get('/document_with_etag', :etag => etag)
         
     | 
| 
       119 
     | 
    
         
            -
             
     | 
| 
       120 
     | 
    
         
            -
                assert_equal Hash, r.class
         
     | 
| 
       121 
     | 
    
         
            -
                assert_equal 'Peugeot', r['car']
         
     | 
| 
       122 
     | 
    
         
            -
             
     | 
| 
       123 
     | 
    
         
            -
                assert_equal 304, @h.last_response.status
         
     | 
| 
       124 
     | 
    
         
            -
             
     | 
| 
       125 
     | 
    
         
            -
                assert_equal 1, @h.cache.size
         
     | 
| 
       126 
     | 
    
         
            -
             
     | 
| 
       127 
     | 
    
         
            -
                r = @h.get('/document_with_etag', :etag => etag, :raw => true)
         
     | 
| 
       128 
     | 
    
         
            -
             
     | 
| 
       129 
     | 
    
         
            -
                assert_equal 304, r.status
         
     | 
| 
       130 
     | 
    
         
            -
              end
         
     | 
| 
       131 
     | 
    
         
            -
             
     | 
| 
       132 
     | 
    
         
            -
              def test_cget_dup_body
         
     | 
| 
       133 
     | 
    
         
            -
             
     | 
| 
       134 
     | 
    
         
            -
                b = @h.get('/document_with_etag')
         
     | 
| 
       135 
     | 
    
         
            -
                etag = @h.last_response.headers['Etag']
         
     | 
| 
       136 
     | 
    
         
            -
                b['year'] = 1977
         
     | 
| 
       137 
     | 
    
         
            -
             
     | 
| 
       138 
     | 
    
         
            -
                assert_equal({"/document_with_etag"=>["\"123456123456\"", {"car"=>"Peugeot"}]}, @h.cache)
         
     | 
| 
       139 
     | 
    
         
            -
             
     | 
| 
       140 
     | 
    
         
            -
                b = @h.get('/document_with_etag', :etag => etag)
         
     | 
| 
       141 
     | 
    
         
            -
             
     | 
| 
       142 
     | 
    
         
            -
                assert_equal 304, @h.last_response.status
         
     | 
| 
       143 
     | 
    
         
            -
             
     | 
| 
       144 
     | 
    
         
            -
                b['year'] = 1977
         
     | 
| 
       145 
     | 
    
         
            -
             
     | 
| 
       146 
     | 
    
         
            -
                assert_equal({"/document_with_etag"=>["\"123456123456\"", {"car"=>"Peugeot"}]}, @h.cache)
         
     | 
| 
       147 
     | 
    
         
            -
              end
         
     | 
| 
       148 
     | 
    
         
            -
             
     | 
| 
       149 
     | 
    
         
            -
              def test_cget_dont_cache
         
     | 
| 
       150 
     | 
    
         
            -
             
     | 
| 
       151 
     | 
    
         
            -
                b = @h.get('/document_with_etag', :cache => false)
         
     | 
| 
       152 
     | 
    
         
            -
             
     | 
| 
       153 
     | 
    
         
            -
                assert_equal 0, @h.cache.size
         
     | 
| 
       154 
     | 
    
         
            -
              end
         
     | 
| 
       155 
     | 
    
         
            -
             
     | 
| 
       156 
     | 
    
         
            -
              def test_get_params
         
     | 
| 
       157 
     | 
    
         
            -
             
     | 
| 
       158 
     | 
    
         
            -
                assert_equal(
         
     | 
| 
       159 
     | 
    
         
            -
                  {},
         
     | 
| 
       160 
     | 
    
         
            -
                  @h.get('/params'))
         
     | 
| 
       161 
     | 
    
         
            -
                assert_equal(
         
     | 
| 
       162 
     | 
    
         
            -
                  { 'a' => 'b' },
         
     | 
| 
       163 
     | 
    
         
            -
                  @h.get('/params?a=b'))
         
     | 
| 
       164 
     | 
    
         
            -
                assert_equal(
         
     | 
| 
       165 
     | 
    
         
            -
                  { 'a' => 'b', 'c' => 'd' },
         
     | 
| 
       166 
     | 
    
         
            -
                  @h.get('/params?a=b', :params => { :c => 'd' }))
         
     | 
| 
       167 
     | 
    
         
            -
                assert_equal(
         
     | 
| 
       168 
     | 
    
         
            -
                  { 'a' => 'b', 'c' => 'd' },
         
     | 
| 
       169 
     | 
    
         
            -
                  @h.get('/params', :params => { 'a' => :b, :c => 'd' }))
         
     | 
| 
       170 
     | 
    
         
            -
                assert_equal(
         
     | 
| 
       171 
     | 
    
         
            -
                  {},
         
     | 
| 
       172 
     | 
    
         
            -
                  @h.get('/params', :params => {}))
         
     | 
| 
       173 
     | 
    
         
            -
              end
         
     | 
| 
       174 
     | 
    
         
            -
             
     | 
| 
       175 
     | 
    
         
            -
              def test_etag_but_missing
         
     | 
| 
       176 
     | 
    
         
            -
             
     | 
| 
       177 
     | 
    
         
            -
                b = @h.get('/document_with_etag', :etag => '"123456123456"')
         
     | 
| 
       178 
     | 
    
         
            -
             
     | 
| 
       179 
     | 
    
         
            -
                assert_equal 'Peugeot', b['car']
         
     | 
| 
       180 
     | 
    
         
            -
                assert_equal 200, @h.last_response.status
         
     | 
| 
       181 
     | 
    
         
            -
              end
         
     | 
| 
       182 
     | 
    
         
            -
             
     | 
| 
       183 
     | 
    
         
            -
              def test_get_utf8_uri
         
     | 
| 
       184 
     | 
    
         
            -
             
     | 
| 
       185 
     | 
    
         
            -
                b = @h.get('/川崎')
         
     | 
| 
       186 
     | 
    
         
            -
             
     | 
| 
       187 
     | 
    
         
            -
                assert_nil b
         
     | 
| 
       188 
     | 
    
         
            -
                assert_equal 404, @h.last_response.status
         
     | 
| 
       189 
     | 
    
         
            -
              end
         
     | 
| 
       190 
     | 
    
         
            -
            end
         
     | 
| 
       191 
     | 
    
         
            -
             
     |