cant_wait 1.0.1 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
 - checksums.yaml.gz.sig +0 -0
 - data/.travis.yml +7 -2
 - data/CHANGELOG.markdown +27 -26
 - data/README.markdown +11 -2
 - data/cant_wait.gemspec +5 -3
 - data/lib/cant_wait/cant_wait_railtie.rb +3 -3
 - data/lib/cant_wait/version.rb +1 -1
 - data/tasks/testing.rake +10 -2
 - data/test/README.markdown +40 -10
 - data/test/cant_wait_test.rb +23 -10
 - data/test/database.yml +0 -1
 - data/test/test_apps/Test_3_0_03/Gemfile +3 -0
 - data/test/test_apps/Test_3_0_20/Gemfile +3 -0
 - data/test/test_apps/Test_3_1_12/Gemfile +2 -1
 - data/test/test_apps/Test_3_2_15/Gemfile +3 -0
 - data/test/test_apps/Test_4_0_1/Gemfile +2 -1
 - data.tar.gz.sig +0 -0
 - metadata +20 -6
 - metadata.gz.sig +3 -1
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA1:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: aac6749422fa688c13a87533783aadd6b427c16c
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: f1a4744c0a8c5149994b01e8a055c47e13d178d2
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: c0de57e91b31e4a7700a5c9fd887093903cceec4e60b492425c6ad5e02f7b66a886dbda8cd90bacb93d7f8f1ecca929ebc290746e9cac36df6cbafb8b076cd64
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: 63c2c19c6a7a6dbec4e8e0aff32600c3b91d458c5b165601da0d7c705f071af408b0778a51816a545a60f337d939ba8b614ca4b027502918c962cecf979d3ad5
         
     | 
    
        checksums.yaml.gz.sig
    CHANGED
    
    | 
         Binary file 
     | 
    
        data/.travis.yml
    CHANGED
    
    | 
         @@ -5,10 +5,15 @@ rvm: 
     | 
|
| 
       5 
5 
     | 
    
         
             
              - 2.0.0
         
     | 
| 
       6 
6 
     | 
    
         
             
              - jruby-19mode  # JRuby in 1.9 mode
         
     | 
| 
       7 
7 
     | 
    
         
             
            before_script:
         
     | 
| 
       8 
     | 
    
         
            -
              #  
     | 
| 
      
 8 
     | 
    
         
            +
              # PostgreSQL:
         
     | 
| 
       9 
9 
     | 
    
         
             
              - psql -c "CREATE ROLE tester WITH LOGIN PASSWORD 'secret';" -U postgres
         
     | 
| 
       10 
10 
     | 
    
         
             
              - psql -c 'CREATE DATABASE test WITH OWNER=tester;' -U postgres
         
     | 
| 
       11 
     | 
    
         
            -
              #  
     | 
| 
      
 11 
     | 
    
         
            +
              # PostGIS:
         
     | 
| 
      
 12 
     | 
    
         
            +
              - sudo apt-get install -qq postgis
         
     | 
| 
      
 13 
     | 
    
         
            +
              - psql -d test -c 'CREATE EXTENSION postgis;' -U postgres
         
     | 
| 
      
 14 
     | 
    
         
            +
              - psql -c "SELECT name,default_version,installed_version FROM pg_available_extensions WHERE name='postgis';" -U postgres
         
     | 
| 
      
 15 
     | 
    
         
            +
              # Travis does a bundle install (cant_wait's Gemfile), which installs the last version of Rails,
         
     | 
| 
      
 16 
     | 
    
         
            +
              #   as it is a dependency. We remove the rails gem to allow the installation of previous versions:
         
     | 
| 
       12 
17 
     | 
    
         
             
              - gem uninstall rails
         
     | 
| 
       13 
18 
     | 
    
         
             
              - rake test:bundle REBUILD=yes
         
     | 
| 
       14 
19 
     | 
    
         
             
            script: rake
         
     | 
    
        data/CHANGELOG.markdown
    CHANGED
    
    | 
         @@ -1,31 +1,29 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
             
     | 
| 
       2 
     | 
    
         
            -
            =====================
         
     | 
| 
      
 1 
     | 
    
         
            +
            ## 1.1.0 (November 24, 2013)
         
     | 
| 
       3 
2 
     | 
    
         | 
| 
       4 
     | 
    
         
            -
             
     | 
| 
      
 3 
     | 
    
         
            +
            Features:
         
     | 
| 
       5 
4 
     | 
    
         | 
| 
       6 
     | 
    
         
            -
              -  
     | 
| 
      
 5 
     | 
    
         
            +
              - Support for PostGIS databases.  Thanks to [Kimitake Miyashita](https://github.com/kimiyash).
         
     | 
| 
       7 
6 
     | 
    
         | 
| 
       8 
     | 
    
         
            -
             
     | 
| 
      
 7 
     | 
    
         
            +
            ## 1.0.1 (November 21, 2013)
         
     | 
| 
       9 
8 
     | 
    
         | 
| 
       10 
     | 
    
         
            -
             
     | 
| 
       11 
     | 
    
         
            -
              - Added tests for Rails 4.0.0.rc2
         
     | 
| 
       12 
     | 
    
         
            -
              - Minor code refactoring (no changes in functionality)
         
     | 
| 
       13 
     | 
    
         
            -
              - Added a new rake task to run <tt>test:bundle</tt> and <tt>test:run</tt> in one pass
         
     | 
| 
      
 9 
     | 
    
         
            +
            Documentation:
         
     | 
| 
       14 
10 
     | 
    
         | 
| 
       15 
     | 
    
         
            -
             
     | 
| 
       16 
     | 
    
         
            -
             
     | 
| 
      
 11 
     | 
    
         
            +
              - Tiny documentation change.
         
     | 
| 
      
 12 
     | 
    
         
            +
             
     | 
| 
      
 13 
     | 
    
         
            +
            ## 1.0.0 (November 20, 2013)
         
     | 
| 
       17 
14 
     | 
    
         | 
| 
       18 
15 
     | 
    
         
             
            Documentation:
         
     | 
| 
       19 
16 
     | 
    
         | 
| 
       20 
     | 
    
         
            -
              -  
     | 
| 
      
 17 
     | 
    
         
            +
              - Bumped the version to 1.0.0, to signal that it is ready for production.  It was actually ready since version 0.0.1, so this change is just to avoid a possible confusion.
         
     | 
| 
       21 
18 
     | 
    
         | 
| 
       22 
19 
     | 
    
         
             
            Development:
         
     | 
| 
       23 
20 
     | 
    
         | 
| 
       24 
     | 
    
         
            -
              -  
     | 
| 
       25 
     | 
    
         
            -
              - Tests for Rails 4.0. 
     | 
| 
      
 21 
     | 
    
         
            +
              - Minor tweaks in the test code.
         
     | 
| 
      
 22 
     | 
    
         
            +
              - Tests for Rails 3.2.15 and 4.0.1
         
     | 
| 
      
 23 
     | 
    
         
            +
              - Set up of the default rake test to run all the tests, without preparing the data (equivalent to <tt>rake test:run</tt>)
         
     | 
| 
      
 24 
     | 
    
         
            +
              - Changes in Travis-CI configuration, discontinuing support for Rubinius, while bugs in its interpreter get sorted out.
         
     | 
| 
       26 
25 
     | 
    
         | 
| 
       27 
     | 
    
         
            -
            0.0.4 (August 15, 2013)
         
     | 
| 
       28 
     | 
    
         
            -
            =======================
         
     | 
| 
      
 26 
     | 
    
         
            +
            ## 0.0.4 (August 15, 2013)
         
     | 
| 
       29 
27 
     | 
    
         | 
| 
       30 
28 
     | 
    
         
             
            Features:
         
     | 
| 
       31 
29 
     | 
    
         | 
| 
         @@ -45,23 +43,26 @@ Development: 
     | 
|
| 
       45 
43 
     | 
    
         
             
              - Tested with new patches of MRI for C Ruby 1.9.3 and 2.0.0
         
     | 
| 
       46 
44 
     | 
    
         
             
              - Tests for Rails 3.2.14
         
     | 
| 
       47 
45 
     | 
    
         | 
| 
       48 
     | 
    
         
            -
             
     | 
| 
       49 
     | 
    
         
            -
            =========================
         
     | 
| 
      
 46 
     | 
    
         
            +
            ## 0.0.3 (June 26, 2013)
         
     | 
| 
       50 
47 
     | 
    
         | 
| 
       51 
48 
     | 
    
         
             
            Documentation:
         
     | 
| 
       52 
49 
     | 
    
         | 
| 
       53 
     | 
    
         
            -
              -  
     | 
| 
      
 50 
     | 
    
         
            +
              - Some minor changes in the documentation
         
     | 
| 
       54 
51 
     | 
    
         | 
| 
       55 
52 
     | 
    
         
             
            Development:
         
     | 
| 
       56 
53 
     | 
    
         | 
| 
       57 
     | 
    
         
            -
              -  
     | 
| 
       58 
     | 
    
         
            -
              - Tests for Rails  
     | 
| 
       59 
     | 
    
         
            -
              - Set up of the default rake test to run all the tests, without preparing the data (equivalent to <tt>rake test:run</tt>)
         
     | 
| 
       60 
     | 
    
         
            -
              - Changes in Travis-CI configuration, discontinuing support for Rubinius, while bugs in its interpreter get sorted out.
         
     | 
| 
      
 54 
     | 
    
         
            +
              - Travis scripts stability fixes
         
     | 
| 
      
 55 
     | 
    
         
            +
              - Tests for Rails 4.0.0
         
     | 
| 
       61 
56 
     | 
    
         | 
| 
       62 
     | 
    
         
            -
             
     | 
| 
       63 
     | 
    
         
            -
            =========================
         
     | 
| 
      
 57 
     | 
    
         
            +
            ## 0.0.2 (June 15, 2013)
         
     | 
| 
       64 
58 
     | 
    
         | 
| 
       65 
59 
     | 
    
         
             
            Documentation:
         
     | 
| 
       66 
60 
     | 
    
         | 
| 
       67 
     | 
    
         
            -
              -  
     | 
| 
      
 61 
     | 
    
         
            +
              - Minor changes in the documentation
         
     | 
| 
      
 62 
     | 
    
         
            +
             
     | 
| 
      
 63 
     | 
    
         
            +
            Development:
         
     | 
| 
      
 64 
     | 
    
         
            +
             
     | 
| 
      
 65 
     | 
    
         
            +
              - Integration with travis-ci.org
         
     | 
| 
      
 66 
     | 
    
         
            +
              - Added tests for Rails 4.0.0.rc2
         
     | 
| 
      
 67 
     | 
    
         
            +
              - Minor code refactoring (no changes in functionality)
         
     | 
| 
      
 68 
     | 
    
         
            +
              - Added a new rake task to run <tt>test:bundle</tt> and <tt>test:run</tt> in one pass
         
     | 
    
        data/README.markdown
    CHANGED
    
    | 
         @@ -4,7 +4,7 @@ 
     | 
|
| 
       4 
4 
     | 
    
         
             
            [](https://travis-ci.org/CarlosCD/cant_wait)
         
     | 
| 
       5 
5 
     | 
    
         | 
| 
       6 
6 
     | 
    
         | 
| 
       7 
     | 
    
         
            -
            This Ruby gem adds statement timeouts for PostgreSQL databases within a Ruby on Rails web application.
         
     | 
| 
      
 7 
     | 
    
         
            +
            This Ruby gem adds statement timeouts for PostgreSQL and PostGIS databases within a Ruby on Rails web application.
         
     | 
| 
       8 
8 
     | 
    
         | 
| 
       9 
9 
     | 
    
         
             
            From the PostgreSQL documentation:
         
     | 
| 
       10 
10 
     | 
    
         | 
| 
         @@ -32,7 +32,7 @@ If any SQL statement takes more time than the timeout value (measured in millise 
     | 
|
| 
       32 
32 
     | 
    
         | 
| 
       33 
33 
     | 
    
         
             
            Add this line to your application's Gemfile:
         
     | 
| 
       34 
34 
     | 
    
         | 
| 
       35 
     | 
    
         
            -
                gem 'cant_wait', '~> 1.0 
     | 
| 
      
 35 
     | 
    
         
            +
                gem 'cant_wait', '~> 1.1.0'
         
     | 
| 
       36 
36 
     | 
    
         | 
| 
       37 
37 
     | 
    
         
             
            And then execute:
         
     | 
| 
       38 
38 
     | 
    
         | 
| 
         @@ -48,6 +48,13 @@ In the file <tt>config/database.yml</tt> of the Rails application, indicate a ti 
     | 
|
| 
       48 
48 
     | 
    
         
             
                  timeout: 180_000  # 3 minutes
         
     | 
| 
       49 
49 
     | 
    
         
             
                  ...
         
     | 
| 
       50 
50 
     | 
    
         | 
| 
      
 51 
     | 
    
         
            +
            or, in the case of PostGIS:
         
     | 
| 
      
 52 
     | 
    
         
            +
             
     | 
| 
      
 53 
     | 
    
         
            +
                production:
         
     | 
| 
      
 54 
     | 
    
         
            +
                  adapter: postgis
         
     | 
| 
      
 55 
     | 
    
         
            +
                  timeout: 180_000  # 3 minutes
         
     | 
| 
      
 56 
     | 
    
         
            +
                  ...
         
     | 
| 
      
 57 
     | 
    
         
            +
             
     | 
| 
       51 
58 
     | 
    
         
             
            Then restart the application to establish the new database settings.
         
     | 
| 
       52 
59 
     | 
    
         | 
| 
       53 
60 
     | 
    
         | 
| 
         @@ -59,6 +66,8 @@ The minimum version of ruby is MRI 1.9.1 or compatible, as the gem uses 1.9 synt 
     | 
|
| 
       59 
66 
     | 
    
         | 
| 
       60 
67 
     | 
    
         
             
            It has also been tested with PostgreSQL versions 8 and 9, but it may work also in other versions supported by Active Record (see PostgreSQL documentation).
         
     | 
| 
       61 
68 
     | 
    
         | 
| 
      
 69 
     | 
    
         
            +
            It has also been tested using PostGIS 2.1, but other versions supported by the activerecord-postgis-adapter should work as well.
         
     | 
| 
      
 70 
     | 
    
         
            +
             
     | 
| 
       62 
71 
     | 
    
         | 
| 
       63 
72 
     | 
    
         
             
            ### Supported Rubies
         
     | 
| 
       64 
73 
     | 
    
         | 
    
        data/cant_wait.gemspec
    CHANGED
    
    | 
         @@ -9,9 +9,10 @@ Gem::Specification.new do |spec| 
     | 
|
| 
       9 
9 
     | 
    
         
             
              spec.platform              = Gem::Platform::RUBY
         
     | 
| 
       10 
10 
     | 
    
         
             
              spec.required_ruby_version = '>= 1.9.1'
         
     | 
| 
       11 
11 
     | 
    
         | 
| 
       12 
     | 
    
         
            -
              spec.summary       = 'Complements the Ruby on Rails web application framework by providing statement timeouts for PostgreSQL  
     | 
| 
       13 
     | 
    
         
            -
             
     | 
| 
       14 
     | 
    
         
            -
             
     | 
| 
      
 12 
     | 
    
         
            +
              spec.summary       = 'Complements the Ruby on Rails web application framework by providing statement timeouts for PostgreSQL and PostGIS ' <<
         
     | 
| 
      
 13 
     | 
    
         
            +
                                   'databases.'
         
     | 
| 
      
 14 
     | 
    
         
            +
              spec.description   = 'Provides statement timeouts for PostgreSQL and PostGIS databases in a Ruby on Rails web application. Stops any SQL ' <<
         
     | 
| 
      
 15 
     | 
    
         
            +
                                   'statement that takes more than a specified number of milliseconds.'
         
     | 
| 
       15 
16 
     | 
    
         | 
| 
       16 
17 
     | 
    
         
             
              spec.license       = 'MIT'
         
     | 
| 
       17 
18 
     | 
    
         | 
| 
         @@ -35,6 +36,7 @@ Gem::Specification.new do |spec| 
     | 
|
| 
       35 
36 
     | 
    
         
             
              else
         
     | 
| 
       36 
37 
     | 
    
         
             
                spec.add_development_dependency 'pg', '~> 0'
         
     | 
| 
       37 
38 
     | 
    
         
             
              end
         
     | 
| 
      
 39 
     | 
    
         
            +
              spec.add_development_dependency 'activerecord-postgis-adapter', '~> 0.6'
         
     | 
| 
       38 
40 
     | 
    
         
             
              if RUBY_PLATFORM =~ /darwin/i
         
     | 
| 
       39 
41 
     | 
    
         
             
                spec.add_development_dependency 'minitest-growl', '~> 0.0.3'
         
     | 
| 
       40 
42 
     | 
    
         
             
                # minitest-growl small problem with minitest 5:
         
     | 
| 
         @@ -5,15 +5,15 @@ module CantWait 
     | 
|
| 
       5 
5 
     | 
    
         
             
              ##
         
     | 
| 
       6 
6 
     | 
    
         
             
              # This class is a Railtie which adds an initializer to Rails
         
     | 
| 
       7 
7 
     | 
    
         
             
              #
         
     | 
| 
       8 
     | 
    
         
            -
              # It reads the database configuration timeout, and if the adapter is  
     | 
| 
       9 
     | 
    
         
            -
              # sets its value as the statement_timeout.
         
     | 
| 
      
 8 
     | 
    
         
            +
              # It reads the database configuration timeout, and only if the adapter is either
         
     | 
| 
      
 9 
     | 
    
         
            +
              # PostgreSQL or PostGIS, sets its value as the statement_timeout.
         
     | 
| 
       10 
10 
     | 
    
         | 
| 
       11 
11 
     | 
    
         
             
              class CantWaitRailtie < Rails::Railtie
         
     | 
| 
       12 
12 
     | 
    
         | 
| 
       13 
13 
     | 
    
         
             
                initializer 'cant_wait.set_timeout' do
         
     | 
| 
       14 
14 
     | 
    
         
             
                  begin
         
     | 
| 
       15 
15 
     | 
    
         
             
                    database_config = Rails.configuration.database_configuration[Rails.env]
         
     | 
| 
       16 
     | 
    
         
            -
                    if (database_config['adapter'].downcase 
     | 
| 
      
 16 
     | 
    
         
            +
                    if (['postgresql', 'postgis'].include? database_config['adapter'].downcase) && database_config['timeout']
         
     | 
| 
       17 
17 
     | 
    
         
             
                      ActiveRecord::Base.connection.execute "set statement_timeout = #{database_config['timeout']}"
         
     | 
| 
       18 
18 
     | 
    
         
             
                    end
         
     | 
| 
       19 
19 
     | 
    
         
             
                  rescue Exception => e
         
     | 
    
        data/lib/cant_wait/version.rb
    CHANGED
    
    
    
        data/tasks/testing.rake
    CHANGED
    
    | 
         @@ -131,7 +131,15 @@ namespace :test do 
     | 
|
| 
       131 
131 
     | 
    
         
             
                      end
         
     | 
| 
       132 
132 
     | 
    
         
             
                      # Run several timeouts test for that version of rails (bundle exec...)
         
     | 
| 
       133 
133 
     | 
    
         
             
                      #   Only the last argument (V) is optional here:
         
     | 
| 
       134 
     | 
    
         
            -
                       
     | 
| 
      
 134 
     | 
    
         
            +
                      # For PostgreSQL:
         
     | 
| 
      
 135 
     | 
    
         
            +
                      all_passing = false unless system "bundle exec ruby test/cant_wait_test.rb #{num} postgres #{@gem_spec.version} #{'V' if verbose}"
         
     | 
| 
      
 136 
     | 
    
         
            +
                      # For PostGIS
         
     | 
| 
      
 137 
     | 
    
         
            +
                      if (RUBY_ENGINE == 'jruby') && (TEST_RAILS_APP[num][:version].to_f == 3.1 || TEST_RAILS_APP[num][:version] >= '4')
         
     | 
| 
      
 138 
     | 
    
         
            +
                        puts 'PostGIS: activerecord-postgis-adapter for JRuby does not support Rails 3.1 or Rails 4... test skipped!'
         
     | 
| 
      
 139 
     | 
    
         
            +
                      else
         
     | 
| 
      
 140 
     | 
    
         
            +
                        # We run the test even if it could have failed for PostgreSQL
         
     | 
| 
      
 141 
     | 
    
         
            +
                        all_passing = false unless system "bundle exec ruby test/cant_wait_test.rb #{num} postgis #{@gem_spec.version} #{'V' if verbose}"
         
     | 
| 
      
 142 
     | 
    
         
            +
                      end
         
     | 
| 
       135 
143 
     | 
    
         
             
                    else
         
     | 
| 
       136 
144 
     | 
    
         
             
                      puts ' bundle check and bundle failed! Check your rails test app Gemfile.'
         
     | 
| 
       137 
145 
     | 
    
         
             
                      puts ' If there are missing gems, run rake test:bundle'
         
     | 
| 
         @@ -145,7 +153,7 @@ namespace :test do 
     | 
|
| 
       145 
153 
     | 
    
         
             
                  puts "Finally set again the gem ENV['BUNDLE_GEMFILE'] as:"
         
     | 
| 
       146 
154 
     | 
    
         
             
                  puts "  '#{ENV['BUNDLE_GEMFILE']}'"
         
     | 
| 
       147 
155 
     | 
    
         
             
                end
         
     | 
| 
       148 
     | 
    
         
            -
                exit(1) unless all_passing  # non zero  
     | 
| 
      
 156 
     | 
    
         
            +
                exit(1) unless all_passing  # non zero means build failure
         
     | 
| 
       149 
157 
     | 
    
         
             
              end
         
     | 
| 
       150 
158 
     | 
    
         | 
| 
       151 
159 
     | 
    
         
             
              private
         
     | 
    
        data/test/README.markdown
    CHANGED
    
    | 
         @@ -6,9 +6,16 @@ 
     | 
|
| 
       6 
6 
     | 
    
         
             
            ## Test setup and choices
         
     | 
| 
       7 
7 
     | 
    
         | 
| 
       8 
8 
     | 
    
         
             
            - Minitest, to keep things simple.
         
     | 
| 
       9 
     | 
    
         
            -
            - PostgreSQL database server (localhost or not).
         
     | 
| 
      
 9 
     | 
    
         
            +
            - PostgreSQL database server (localhost or not), with PostGIS.
         
     | 
| 
       10 
10 
     | 
    
         
             
            - I used RVM.  This is not a requirement, other ruby version managers should work as well.
         
     | 
| 
       11 
11 
     | 
    
         | 
| 
      
 12 
     | 
    
         
            +
            ## PostGIS
         
     | 
| 
      
 13 
     | 
    
         
            +
             
     | 
| 
      
 14 
     | 
    
         
            +
            After installing PostgreSQL, install PostGIS. See details at [postgis.org][http://www.postgis.org/docs/postgis_installation.html).
         
     | 
| 
      
 15 
     | 
    
         
            +
             
     | 
| 
      
 16 
     | 
    
         
            +
            In the case of Mac OS X, consider to use Postgres app, which bundles PostGIS.
         
     | 
| 
      
 17 
     | 
    
         
            +
             
     | 
| 
      
 18 
     | 
    
         
            +
            To test PostGIS in Rails, I am using the gem 'activerecord-postgis-adapter', which seem to be actively maintained. However, I noticed that the gem errs in the case of JRuby for Rails 3.1.X, and it doesn't support Rails 4.X yet.
         
     | 
| 
       12 
19 
     | 
    
         | 
| 
       13 
20 
     | 
    
         
             
            ## Test strategy: different Rails apps with random timeouts
         
     | 
| 
       14 
21 
     | 
    
         | 
| 
         @@ -28,7 +35,7 @@ I finally chose to test several versions of Rails/ActiveRecord independently. 
     | 
|
| 
       28 
35 
     | 
    
         | 
| 
       29 
36 
     | 
    
         
             
            I created 5 simple Rails apps, of different versions, in the folder test/test_apps.
         
     | 
| 
       30 
37 
     | 
    
         | 
| 
       31 
     | 
    
         
            -
            Then I modified their Gemfile by adding gems for PostgreSQL, Minitest and Growl:
         
     | 
| 
      
 38 
     | 
    
         
            +
            Then I modified their Gemfile by adding gems for PostgreSQL, PostGIS, Minitest and Growl:
         
     | 
| 
       32 
39 
     | 
    
         | 
| 
       33 
40 
     | 
    
         
             
                if RUBY_ENGINE == 'jruby' && RUBY_PLATFORM == 'java'
         
     | 
| 
       34 
41 
     | 
    
         
             
                  gem 'activerecord-jdbcpostgresql-adapter', '~> 1.2'
         
     | 
| 
         @@ -36,6 +43,26 @@ Then I modified their Gemfile by adding gems for PostgreSQL, Minitest and Growl: 
     | 
|
| 
       36 
43 
     | 
    
         
             
                  gem 'pg', '~> 0'
         
     | 
| 
       37 
44 
     | 
    
         
             
                end
         
     | 
| 
       38 
45 
     | 
    
         | 
| 
      
 46 
     | 
    
         
            +
                gem 'activerecord-postgis-adapter', '~> 0.6'
         
     | 
| 
      
 47 
     | 
    
         
            +
             
     | 
| 
      
 48 
     | 
    
         
            +
                if RUBY_PLATFORM =~ /darwin/i
         
     | 
| 
      
 49 
     | 
    
         
            +
                  gem 'minitest-growl', '~> 0.0.3'
         
     | 
| 
      
 50 
     | 
    
         
            +
                  gem 'minitest', '~> 4.7.4'
         
     | 
| 
      
 51 
     | 
    
         
            +
                else
         
     | 
| 
      
 52 
     | 
    
         
            +
                  gem('minitest', '~> 5') if RUBY_VERSION < '1.9.3'
         
     | 
| 
      
 53 
     | 
    
         
            +
                end
         
     | 
| 
      
 54 
     | 
    
         
            +
             
     | 
| 
      
 55 
     | 
    
         
            +
                gem 'cant_wait', path: File.expand_path('../../../..', __FILE__)
         
     | 
| 
      
 56 
     | 
    
         
            +
             
     | 
| 
      
 57 
     | 
    
         
            +
            In the particular case of Rails 3.1 and 4, as at this point <tt>activerecord-postgis-adapter</tt> doesn't support Rails 4 for JRuby, and errs in the case of 3.1.  As a consequence, I don't run that test and I also don't add that gem to the Gemfile, having instead:
         
     | 
| 
      
 58 
     | 
    
         
            +
             
     | 
| 
      
 59 
     | 
    
         
            +
                if RUBY_ENGINE == 'jruby' && RUBY_PLATFORM == 'java'
         
     | 
| 
      
 60 
     | 
    
         
            +
                  gem 'activerecord-jdbcpostgresql-adapter', '~> 1.2'
         
     | 
| 
      
 61 
     | 
    
         
            +
                else
         
     | 
| 
      
 62 
     | 
    
         
            +
                  gem 'pg', '~> 0'
         
     | 
| 
      
 63 
     | 
    
         
            +
                  gem 'activerecord-postgis-adapter', '~> 0.6'
         
     | 
| 
      
 64 
     | 
    
         
            +
                end
         
     | 
| 
      
 65 
     | 
    
         
            +
             
     | 
| 
       39 
66 
     | 
    
         
             
                if RUBY_PLATFORM =~ /darwin/i
         
     | 
| 
       40 
67 
     | 
    
         
             
                  gem 'minitest-growl', '~> 0.0.3'
         
     | 
| 
       41 
68 
     | 
    
         
             
                  gem 'minitest', '~> 4.7.4'
         
     | 
| 
         @@ -50,7 +77,7 @@ The rails apps require also to run <tt>bundle install</tt> for each app, especia 
     | 
|
| 
       50 
77 
     | 
    
         
             
            The actual test is run through the <tt>rake test:run</tt> command.  It goes over each Rails app in sequence and:
         
     | 
| 
       51 
78 
     | 
    
         | 
| 
       52 
79 
     | 
    
         
             
            1. It sets Bundler to use the test app's Gemfile
         
     | 
| 
       53 
     | 
    
         
            -
            2. It creates the app's <tt>config/database.yml</tt> with a random timeout
         
     | 
| 
      
 80 
     | 
    
         
            +
            2. It creates the app's <tt>config/database.yml</tt> with a random timeout and either PostgreSQL or PostGIS
         
     | 
| 
       54 
81 
     | 
    
         
             
            3. It starts Rails
         
     | 
| 
       55 
82 
     | 
    
         
             
            4. It checks the version of Rails and ActiveRecord running.
         
     | 
| 
       56 
83 
     | 
    
         
             
            5. It checks that the PostgreSQL connection's statement_timeout is the expected.
         
     | 
| 
         @@ -75,7 +102,7 @@ After cloning the gem, you can start testing it by following these steps: 
     | 
|
| 
       75 
102 
     | 
    
         | 
| 
       76 
103 
     | 
    
         
             
                    bundle
         
     | 
| 
       77 
104 
     | 
    
         | 
| 
       78 
     | 
    
         
            -
            4. Set up your PostgreSQL test database and edit accordingly the file <tt>test/database.yml</tt 
     | 
| 
      
 105 
     | 
    
         
            +
            4. Set up your PostgreSQL/PostGIS test database and edit accordingly the file <tt>test/database.yml</tt>, not specifying the adapter in the file.
         
     | 
| 
       79 
106 
     | 
    
         | 
| 
       80 
107 
     | 
    
         
             
            5. Get the gems used by the test Rails apps:
         
     | 
| 
       81 
108 
     | 
    
         | 
| 
         @@ -99,12 +126,13 @@ Check the .travis.yml file for details. 
     | 
|
| 
       99 
126 
     | 
    
         | 
| 
       100 
127 
     | 
    
         
             
            * Versions of Ruby:
         
     | 
| 
       101 
128 
     | 
    
         | 
| 
       102 
     | 
    
         
            -
                    1.9.2-p320          (MRI's last patchlevel of 1.9.2)  Linux and  
     | 
| 
       103 
     | 
    
         
            -
                    1.9.3-p448 
     | 
| 
       104 
     | 
    
         
            -
                     
     | 
| 
       105 
     | 
    
         
            -
                     
     | 
| 
      
 129 
     | 
    
         
            +
                    1.9.2-p320          (MRI's last patchlevel of 1.9.2)  Linux and Apple OS X
         
     | 
| 
      
 130 
     | 
    
         
            +
                    1.9.3-p448                                            Linux
         
     | 
| 
      
 131 
     | 
    
         
            +
                    1.9.3-p484          (MRI last patchlevel of 1.9.3)    Apple OS X
         
     | 
| 
      
 132 
     | 
    
         
            +
                    2.0.0-p247                                            Linux
         
     | 
| 
      
 133 
     | 
    
         
            +
                    2.0.0-p353          (MRI last patchlevel of 2.0.0)    Apple OS X
         
     | 
| 
      
 134 
     | 
    
         
            +
                    jruby 1.7.8         (Java 1.6.0)                      Apple OS X
         
     | 
| 
       106 
135 
     | 
    
         
             
                    jruby 1.7.8         (Java 1.7.0)                      Linux
         
     | 
| 
       107 
     | 
    
         
            -
                    Rubinius 2.0.0      (1.9.3-compatible)                Linux
         
     | 
| 
       108 
136 
     | 
    
         | 
| 
       109 
137 
     | 
    
         
             
              It requires at least MRI 1.9.1 or compatible.
         
     | 
| 
       110 
138 
     | 
    
         | 
| 
         @@ -116,7 +144,9 @@ Check the .travis.yml file for details. 
     | 
|
| 
       116 
144 
     | 
    
         
             
                    Rails 3.2.15     Last patchlevel of Rails 3.2
         
     | 
| 
       117 
145 
     | 
    
         
             
                    Rails 4.0.1      Last Release of Rails 4.0
         
     | 
| 
       118 
146 
     | 
    
         | 
| 
       119 
     | 
    
         
            -
            * PostgreSQL versions 8.3.6  
     | 
| 
      
 147 
     | 
    
         
            +
            * PostgreSQL versions 8.3.6, 9.2.4 and 9.3.1.
         
     | 
| 
      
 148 
     | 
    
         
            +
             
     | 
| 
      
 149 
     | 
    
         
            +
            * PostGIS 2.1.0
         
     | 
| 
       120 
150 
     | 
    
         | 
| 
       121 
151 
     | 
    
         | 
| 
       122 
152 
     | 
    
         
             
            ## Development / Contributing
         
     | 
    
        data/test/cant_wait_test.rb
    CHANGED
    
    | 
         @@ -1,12 +1,13 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            # Invocation from tasks/testing.rake:
         
     | 
| 
       2 
     | 
    
         
            -
            #   bundle exec ruby test/cant_wait_test.rb 
     | 
| 
      
 2 
     | 
    
         
            +
            #   bundle exec ruby test/cant_wait_test.rb  app_number  db_adapter  gem_version  verbose_flag
         
     | 
| 
       3 
3 
     | 
    
         
             
            #   Where the parameters are:
         
     | 
| 
       4 
4 
     | 
    
         
             
            #     1: Number from 0 to 4. Index of the rails app (see TEST_RAILS_APP)
         
     | 
| 
       5 
     | 
    
         
            -
            #     2: String  
     | 
| 
       6 
     | 
    
         
            -
            #     3:  
     | 
| 
      
 5 
     | 
    
         
            +
            #     2: String, Database adapter. It can be either postgres or postgis
         
     | 
| 
      
 6 
     | 
    
         
            +
            #     3: String with the Gem version, for example '1.0.2'.
         
     | 
| 
      
 7 
     | 
    
         
            +
            #     4: V, for verbose (ptional)
         
     | 
| 
       7 
8 
     | 
    
         
             
            # Examples:
         
     | 
| 
       8 
     | 
    
         
            -
            #   bundle exec ruby test/cant_wait_test.rb 2 1. 
     | 
| 
       9 
     | 
    
         
            -
            #   bundle exec ruby test/cant_wait_test.rb 4 0.0 
     | 
| 
      
 9 
     | 
    
         
            +
            #   bundle exec ruby test/cant_wait_test.rb 2 postgres 1.1.0
         
     | 
| 
      
 10 
     | 
    
         
            +
            #   bundle exec ruby test/cant_wait_test.rb 4 postgis 1.0.0 V
         
     | 
| 
       10 
11 
     | 
    
         | 
| 
       11 
12 
     | 
    
         
             
            require 'minitest/autorun'
         
     | 
| 
       12 
13 
     | 
    
         
             
            require 'minitest/growl_notify' if RUBY_PLATFORM =~ /darwin/i
         
     | 
| 
         @@ -22,14 +23,15 @@ class CantWaitTest < MiniTest::Unit::TestCase 
     | 
|
| 
       22 
23 
     | 
    
         
             
                                { version: '3.2.15', rails_root: 'test_apps/Test_3_2_15'},
         
     | 
| 
       23 
24 
     | 
    
         
             
                                { version: '4.0.1',  rails_root: 'test_apps/Test_4_0_1' }]
         
     | 
| 
       24 
25 
     | 
    
         | 
| 
       25 
     | 
    
         
            -
              # Sets a random timeout and a Rails app to be tested
         
     | 
| 
      
 26 
     | 
    
         
            +
              # Sets a random timeout, postgresql or postgis, and a Rails app to be tested
         
     | 
| 
       26 
27 
     | 
    
         
             
              def setup
         
     | 
| 
       27 
28 
     | 
    
         
             
                # Arguments:
         
     | 
| 
       28 
29 
     | 
    
         
             
                # To be run from rake test, passing valid args:
         
     | 
| 
       29 
     | 
    
         
            -
                raise 'Wrong number of arguments for test' unless ( 
     | 
| 
      
 30 
     | 
    
         
            +
                raise 'Wrong number of arguments for test' unless (3..4).include? ARGV.length
         
     | 
| 
       30 
31 
     | 
    
         
             
                rails_app_index = ARGV[0].to_i # Rails app index passed as an argument:
         
     | 
| 
       31 
     | 
    
         
            -
                @ 
     | 
| 
       32 
     | 
    
         
            -
                @ 
     | 
| 
      
 32 
     | 
    
         
            +
                @db_kind = ARGV[1].to_sym  # :postgres or :postgis
         
     | 
| 
      
 33 
     | 
    
         
            +
                @gem_version = ARGV[2]  # '1.0.1' or whatever
         
     | 
| 
      
 34 
     | 
    
         
            +
                @verbose = ARGV[3] == 'V'
         
     | 
| 
       33 
35 
     | 
    
         | 
| 
       34 
36 
     | 
    
         
             
                # If app value given is not valid, we choose a random one:
         
     | 
| 
       35 
37 
     | 
    
         
             
                valid_range = (0..(TEST_RAILS_APP.length-1))
         
     | 
| 
         @@ -39,6 +41,10 @@ class CantWaitTest < MiniTest::Unit::TestCase 
     | 
|
| 
       39 
41 
     | 
    
         | 
| 
       40 
42 
     | 
    
         
             
                raise 'At least Ruby 1.9.3 is required for rails 4 or above' if (@rails_app[:version] >= '4') && (RUBY_VERSION < '1.9.3')
         
     | 
| 
       41 
43 
     | 
    
         | 
| 
      
 44 
     | 
    
         
            +
                # If the adapter is not valid, we default to postgres:
         
     | 
| 
      
 45 
     | 
    
         
            +
                @db_kind = :postgres unless @db_kind == :postgis
         
     | 
| 
      
 46 
     | 
    
         
            +
                puts "Testing the #{@db_kind} adapter."
         
     | 
| 
      
 47 
     | 
    
         
            +
             
     | 
| 
       42 
48 
     | 
    
         
             
                # Choose timeout option:
         
     | 
| 
       43 
49 
     | 
    
         
             
                test_chosen = random_number (1..4)
         
     | 
| 
       44 
50 
     | 
    
         
             
                case test_chosen
         
     | 
| 
         @@ -99,13 +105,20 @@ class CantWaitTest < MiniTest::Unit::TestCase 
     | 
|
| 
       99 
105 
     | 
    
         
             
              end
         
     | 
| 
       100 
106 
     | 
    
         | 
| 
       101 
107 
     | 
    
         
             
              def database_yml_contents
         
     | 
| 
      
 108 
     | 
    
         
            +
                database_yml_shared +
         
     | 
| 
      
 109 
     | 
    
         
            +
                  case @db_kind
         
     | 
| 
      
 110 
     | 
    
         
            +
                  when :postgres then "  adapter: postgresql\n"
         
     | 
| 
      
 111 
     | 
    
         
            +
                  when :postgis then  "  adapter: postgis\n"
         
     | 
| 
      
 112 
     | 
    
         
            +
                  end
         
     | 
| 
      
 113 
     | 
    
         
            +
              end
         
     | 
| 
      
 114 
     | 
    
         
            +
             
     | 
| 
      
 115 
     | 
    
         
            +
              def database_yml_shared
         
     | 
| 
       102 
116 
     | 
    
         
             
                database_file = File.join(File.dirname(__FILE__), '/database.yml')
         
     | 
| 
       103 
117 
     | 
    
         
             
                if File.exist?(database_file)
         
     | 
| 
       104 
118 
     | 
    
         
             
                  File.read(database_file)
         
     | 
| 
       105 
119 
     | 
    
         
             
                else
         
     | 
| 
       106 
120 
     | 
    
         
             
                  <<-DATABASE_SETTINGS
         
     | 
| 
       107 
121 
     | 
    
         
             
            test:
         
     | 
| 
       108 
     | 
    
         
            -
              adapter: postgresql
         
     | 
| 
       109 
122 
     | 
    
         
             
              host: localhost
         
     | 
| 
       110 
123 
     | 
    
         
             
              database: test
         
     | 
| 
       111 
124 
     | 
    
         
             
              username: tester
         
     | 
    
        data/test/database.yml
    CHANGED
    
    
| 
         @@ -18,11 +18,12 @@ group :test do 
     | 
|
| 
       18 
18 
     | 
    
         
             
            end
         
     | 
| 
       19 
19 
     | 
    
         | 
| 
       20 
20 
     | 
    
         
             
            #-- Special additions-----------------
         
     | 
| 
       21 
     | 
    
         
            -
            # PostgreSQL as  
     | 
| 
      
 21 
     | 
    
         
            +
            # PostgreSQL and PostGIS as database for ActiveRecord
         
     | 
| 
       22 
22 
     | 
    
         
             
            if RUBY_ENGINE == 'jruby' && RUBY_PLATFORM == 'java'
         
     | 
| 
       23 
23 
     | 
    
         
             
              gem 'activerecord-jdbcpostgresql-adapter', '~> 1.2'
         
     | 
| 
       24 
24 
     | 
    
         
             
            else
         
     | 
| 
       25 
25 
     | 
    
         
             
              gem 'pg', '~> 0'
         
     | 
| 
      
 26 
     | 
    
         
            +
              gem 'activerecord-postgis-adapter', '~> 0.6'
         
     | 
| 
       26 
27 
     | 
    
         
             
            end
         
     | 
| 
       27 
28 
     | 
    
         | 
| 
       28 
29 
     | 
    
         
             
            # Minitest and Growl:
         
     | 
| 
         @@ -42,11 +42,12 @@ end 
     | 
|
| 
       42 
42 
     | 
    
         
             
            # gem 'debugger', group: [:development, :test]
         
     | 
| 
       43 
43 
     | 
    
         | 
| 
       44 
44 
     | 
    
         
             
            #-- Special additions-----------------
         
     | 
| 
       45 
     | 
    
         
            -
            # PostgreSQL as  
     | 
| 
      
 45 
     | 
    
         
            +
            # PostgreSQL and PostGIS as database for ActiveRecord
         
     | 
| 
       46 
46 
     | 
    
         
             
            if RUBY_ENGINE == 'jruby' && RUBY_PLATFORM == 'java'
         
     | 
| 
       47 
47 
     | 
    
         
             
              gem 'activerecord-jdbcpostgresql-adapter', '~> 1.2'
         
     | 
| 
       48 
48 
     | 
    
         
             
            else
         
     | 
| 
       49 
49 
     | 
    
         
             
              gem 'pg', '~> 0'
         
     | 
| 
      
 50 
     | 
    
         
            +
              gem 'activerecord-postgis-adapter', '~> 0.6'
         
     | 
| 
       50 
51 
     | 
    
         
             
            end
         
     | 
| 
       51 
52 
     | 
    
         | 
| 
       52 
53 
     | 
    
         
             
            # Minitest and Growl:
         
     | 
    
        data.tar.gz.sig
    CHANGED
    
    | 
         Binary file 
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: cant_wait
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 1.0 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 1.1.0
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors:
         
     | 
| 
       7 
7 
     | 
    
         
             
            - Carlos A. Carro Duplá
         
     | 
| 
         @@ -30,7 +30,7 @@ cert_chain: 
     | 
|
| 
       30 
30 
     | 
    
         
             
              4Lx7TwZB/AT4xQfhKewXYTfvjRQRUKhnnhPh+CYwpl0xV9jun/8HHCVLWFyDLKa0
         
     | 
| 
       31 
31 
     | 
    
         
             
              j8swKkWECMke3qZmvKW8NTWQc4ffpbGtugif0Iw9bA==
         
     | 
| 
       32 
32 
     | 
    
         
             
              -----END CERTIFICATE-----
         
     | 
| 
       33 
     | 
    
         
            -
            date: 2013-11- 
     | 
| 
      
 33 
     | 
    
         
            +
            date: 2013-11-24 00:00:00.000000000 Z
         
     | 
| 
       34 
34 
     | 
    
         
             
            dependencies:
         
     | 
| 
       35 
35 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       36 
36 
     | 
    
         
             
              name: rails
         
     | 
| 
         @@ -88,6 +88,20 @@ dependencies: 
     | 
|
| 
       88 
88 
     | 
    
         
             
                - - ~>
         
     | 
| 
       89 
89 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       90 
90 
     | 
    
         
             
                    version: '0'
         
     | 
| 
      
 91 
     | 
    
         
            +
            - !ruby/object:Gem::Dependency
         
     | 
| 
      
 92 
     | 
    
         
            +
              name: activerecord-postgis-adapter
         
     | 
| 
      
 93 
     | 
    
         
            +
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
      
 94 
     | 
    
         
            +
                requirements:
         
     | 
| 
      
 95 
     | 
    
         
            +
                - - ~>
         
     | 
| 
      
 96 
     | 
    
         
            +
                  - !ruby/object:Gem::Version
         
     | 
| 
      
 97 
     | 
    
         
            +
                    version: '0.6'
         
     | 
| 
      
 98 
     | 
    
         
            +
              type: :development
         
     | 
| 
      
 99 
     | 
    
         
            +
              prerelease: false
         
     | 
| 
      
 100 
     | 
    
         
            +
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
      
 101 
     | 
    
         
            +
                requirements:
         
     | 
| 
      
 102 
     | 
    
         
            +
                - - ~>
         
     | 
| 
      
 103 
     | 
    
         
            +
                  - !ruby/object:Gem::Version
         
     | 
| 
      
 104 
     | 
    
         
            +
                    version: '0.6'
         
     | 
| 
       91 
105 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       92 
106 
     | 
    
         
             
              name: minitest-growl
         
     | 
| 
       93 
107 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
         @@ -116,9 +130,9 @@ dependencies: 
     | 
|
| 
       116 
130 
     | 
    
         
             
                - - ~>
         
     | 
| 
       117 
131 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       118 
132 
     | 
    
         
             
                    version: 4.7.4
         
     | 
| 
       119 
     | 
    
         
            -
            description: Provides statement timeouts for PostgreSQL databases in a 
     | 
| 
       120 
     | 
    
         
            -
              web application. Stops any SQL statement that takes more than a specified 
     | 
| 
       121 
     | 
    
         
            -
              of milliseconds.
         
     | 
| 
      
 133 
     | 
    
         
            +
            description: Provides statement timeouts for PostgreSQL and PostGIS databases in a
         
     | 
| 
      
 134 
     | 
    
         
            +
              Ruby on Rails web application. Stops any SQL statement that takes more than a specified
         
     | 
| 
      
 135 
     | 
    
         
            +
              number of milliseconds.
         
     | 
| 
       122 
136 
     | 
    
         
             
            email: ccarrodupla@gmail.com
         
     | 
| 
       123 
137 
     | 
    
         
             
            executables: []
         
     | 
| 
       124 
138 
     | 
    
         
             
            extensions: []
         
     | 
| 
         @@ -387,7 +401,7 @@ rubygems_version: 2.1.11 
     | 
|
| 
       387 
401 
     | 
    
         
             
            signing_key: 
         
     | 
| 
       388 
402 
     | 
    
         
             
            specification_version: 4
         
     | 
| 
       389 
403 
     | 
    
         
             
            summary: Complements the Ruby on Rails web application framework by providing statement
         
     | 
| 
       390 
     | 
    
         
            -
              timeouts for PostgreSQL databases.
         
     | 
| 
      
 404 
     | 
    
         
            +
              timeouts for PostgreSQL and PostGIS databases.
         
     | 
| 
       391 
405 
     | 
    
         
             
            test_files:
         
     | 
| 
       392 
406 
     | 
    
         
             
            - test/README.markdown
         
     | 
| 
       393 
407 
     | 
    
         
             
            - test/cant_wait_test.rb
         
     | 
    
        metadata.gz.sig
    CHANGED
    
    | 
         @@ -1 +1,3 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
             
     | 
| 
      
 1 
     | 
    
         
            +
            r�r��?��x]hh$�V�mM'�͕wP[���Cڥ��"���3;���e:�����'�+��+c�>o?�2L�%��MŦt<E_���$�(�'�
         
     | 
| 
      
 2 
     | 
    
         
            +
            d���
         
     | 
| 
      
 3 
     | 
    
         
            +
             
     |