Skip to content

Commit

Permalink
upgrade to rails 2.3.12 and fix deprecation warning and fix some vers…
Browse files Browse the repository at this point in the history
…ion numbers of gems used for testing
  • Loading branch information
lrbalt committed Jun 9, 2011
1 parent a3c5920 commit ceda51b
Show file tree
Hide file tree
Showing 34 changed files with 2,451 additions and 11,266 deletions.
4 changes: 2 additions & 2 deletions Rakefile
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,12 @@ require(File.join(File.dirname(__FILE__), 'config', 'boot'))

require 'rake'
require 'rake/testtask'
require 'rake/rdoctask'
require 'rdoc/task'

require 'tasks/rails'

begin
require 'test/rails/rake_tasks'
rescue LoadError => e
#It's ok if you don't have ZenTest installed if you're not a developer
end
end
8 changes: 4 additions & 4 deletions config/environments/cucumber.rb
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,8 @@
config.action_controller.session_store = :cookie_store
config.action_controller.session = { :key => 'TracksCucumber', :secret => SITE_CONFIG['salt'] * (30.0 / SITE_CONFIG['salt'].length).ceil }

config.gem 'cucumber', :lib => false, :version => '<0.10.0' unless File.directory?(File.join(Rails.root, 'vendor/plugins/cucumber'))
config.gem 'cucumber-rails', :lib => false, :version => '>=0.3.2' unless File.directory?(File.join(Rails.root, 'vendor/plugins/cucumber-rails'))
config.gem 'gherkin', :lib => false, :version => '2.2.9' unless File.directory?(File.join(Rails.root, 'vendor/plugins/gherkin'))
config.gem 'cucumber', :lib => false, :version => '=0.9.4' unless File.directory?(File.join(Rails.root, 'vendor/plugins/cucumber'))
config.gem 'cucumber-rails', :lib => false, :version => '=0.3.2' unless File.directory?(File.join(Rails.root, 'vendor/plugins/cucumber-rails'))
config.gem 'gherkin', :lib => false, :version => '=2.4.0' unless File.directory?(File.join(Rails.root, 'vendor/plugins/gherkin'))
config.gem 'database_cleaner', :lib => false, :version => '>=0.5.0' unless File.directory?(File.join(Rails.root, 'vendor/plugins/database_cleaner'))
config.gem 'webrat', :lib => false, :version => '>=0.7.0' unless File.directory?(File.join(Rails.root, 'vendor/plugins/webrat'))
config.gem 'webrat', :lib => false, :version => '>=0.7.0' unless File.directory?(File.join(Rails.root, 'vendor/plugins/webrat'))
8 changes: 4 additions & 4 deletions vendor/gems/datanoise-actionwebservice-2.3.2/.specification
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,8 @@ dependencies:
segments:
- 2
- 3
- 11
version: 2.3.11
- 12
version: 2.3.12
type: :runtime
version_requirements: *id001
- !ruby/object:Gem::Dependency
Expand All @@ -45,8 +45,8 @@ dependencies:
segments:
- 2
- 3
- 11
version: 2.3.11
- 12
version: 2.3.12
type: :runtime
version_requirements: *id002
description: Adds WSDL/SOAP and XML-RPC web service support to Action Pack
Expand Down
4 changes: 2 additions & 2 deletions vendor/gems/datanoise-actionwebservice-2.3.2/Rakefile
Original file line number Diff line number Diff line change
Expand Up @@ -72,8 +72,8 @@ spec = Gem::Specification.new do |s|
s.rubyforge_project = "aws"
s.homepage = "http://www.rubyonrails.org"

s.add_dependency('actionpack', '= 2.3.11' + PKG_BUILD)
s.add_dependency('activerecord', '= 2.3.11' + PKG_BUILD)
s.add_dependency('actionpack', '= 2.3.12' + PKG_BUILD)
s.add_dependency('activerecord', '= 2.3.12' + PKG_BUILD)

s.has_rdoc = true
s.requirements << 'none'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -340,7 +340,7 @@ def create_has_many_polymorphs_reflection(association_id, options, &extension) #
options[:parent_extend] = spiked_create_extension_module(association_id, Array(options[:parent_extend]), "Parent")

# create the reflection object
returning(create_reflection(:has_many_polymorphs, association_id, options, self)) do |reflection|
create_reflection(:has_many_polymorphs, association_id, options, self).tap do |reflection|
# set up the other related associations
create_join_association(association_id, reflection)
create_has_many_through_associations_for_parent_to_children(association_id, reflection)
Expand All @@ -355,7 +355,7 @@ def create_has_many_polymorphs_reflection(association_id, options, &extension) #

def build_table_aliases(from)
# for the targets
returning({}) do |aliases|
{}.tap do |aliases|
from.map(&:to_s).sort.map(&:to_sym).each_with_index do |plural, t_index|
begin
table = plural._as_class.table_name
Expand Down
12 changes: 5 additions & 7 deletions vendor/rails/actionmailer/Rakefile
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
require 'rubygems'
require 'rake'
require 'rake/testtask'
require 'rake/rdoctask'
require 'rdoc/task'
require 'rake/packagetask'
require 'rake/gempackagetask'
require 'rubygems/package_task'
require File.join(File.dirname(__FILE__), 'lib', 'action_mailer', 'version')

PKG_BUILD = ENV['PKG_BUILD'] ? '.' + ENV['PKG_BUILD'] : ''
Expand All @@ -29,7 +29,7 @@ Rake::TestTask.new { |t|


# Generate the RDoc documentation
Rake::RDocTask.new { |rdoc|
RDoc::Task.new { |rdoc|
rdoc.rdoc_dir = 'doc'
rdoc.title = "Action Mailer -- Easy email delivery and testing"
rdoc.options << '--line-numbers' << '--inline-source' << '-A cattr_accessor=object'
Expand All @@ -54,19 +54,17 @@ spec = Gem::Specification.new do |s|
s.rubyforge_project = "actionmailer"
s.homepage = "http://www.rubyonrails.org"

s.add_dependency('actionpack', '= 2.3.11' + PKG_BUILD)
s.add_dependency('actionpack', '= 2.3.12' + PKG_BUILD)

s.has_rdoc = true
s.requirements << 'none'
s.require_path = 'lib'
s.autorequire = 'action_mailer'

s.files = [ "Rakefile", "install.rb", "README", "CHANGELOG", "MIT-LICENSE" ]
s.files = s.files + Dir.glob( "lib/**/*" ).delete_if { |item| item.include?( "\.svn" ) }
s.files = s.files + Dir.glob( "test/**/*" ).delete_if { |item| item.include?( "\.svn" ) }
end

Rake::GemPackageTask.new(spec) do |p|
Gem::PackageTask.new(spec) do |p|
p.gem_spec = spec
p.need_tar = true
p.need_zip = true
Expand Down
2 changes: 1 addition & 1 deletion vendor/rails/actionmailer/lib/action_mailer/version.rb
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ module ActionMailer
module VERSION #:nodoc:
MAJOR = 2
MINOR = 3
TINY = 11
TINY = 12

STRING = [MAJOR, MINOR, TINY].join('.')
end
Expand Down
12 changes: 5 additions & 7 deletions vendor/rails/actionpack/Rakefile
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
require 'rubygems'
require 'rake'
require 'rake/testtask'
require 'rake/rdoctask'
require 'rdoc/task'
require 'rake/packagetask'
require 'rake/gempackagetask'
require 'rubygems/package_task'
require File.join(File.dirname(__FILE__), 'lib', 'action_pack', 'version')

PKG_BUILD = ENV['PKG_BUILD'] ? '.' + ENV['PKG_BUILD'] : ''
Expand Down Expand Up @@ -45,7 +45,7 @@ end

# Genereate the RDoc documentation

Rake::RDocTask.new { |rdoc|
RDoc::Task.new { |rdoc|
rdoc.rdoc_dir = 'doc'
rdoc.title = "Action Pack -- On rails from request to response"
rdoc.options << '--line-numbers' << '--inline-source'
Expand Down Expand Up @@ -76,22 +76,20 @@ spec = Gem::Specification.new do |s|
s.rubyforge_project = "actionpack"
s.homepage = "http://www.rubyonrails.org"

s.has_rdoc = true
s.requirements << 'none'

s.add_dependency('activesupport', '= 2.3.11' + PKG_BUILD)
s.add_dependency('activesupport', '= 2.3.12' + PKG_BUILD)
s.add_dependency('rack', '~> 1.1.0')

s.require_path = 'lib'
s.autorequire = 'action_controller'

s.files = [ "Rakefile", "install.rb", "README", "RUNNING_UNIT_TESTS", "CHANGELOG", "MIT-LICENSE" ]
dist_dirs.each do |dir|
s.files = s.files + Dir.glob( "#{dir}/**/*" ).delete_if { |item| item.include?( "\.svn" ) }
end
end

Rake::GemPackageTask.new(spec) do |p|
Gem::PackageTask.new(spec) do |p|
p.gem_spec = spec
p.need_tar = true
p.need_zip = true
Expand Down
4 changes: 3 additions & 1 deletion vendor/rails/actionpack/lib/action_controller/request.rb
Original file line number Diff line number Diff line change
Expand Up @@ -446,7 +446,9 @@ def session=(session) #:nodoc:
end

def reset_session
session.destroy if session
# session may be a hash, if so, we do not want to call destroy
# fixes issue 6440
session.destroy if session and session.respond_to?(:destroy)
self.session = {}
end

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -196,6 +196,7 @@ def call(env)

if (request_cookies.nil? || request_cookies[@key] != sid) || options[:expire_after]
cookie = {:value => sid}
cookie[:expires] = Time.now + options[:expire_after] if options[:expire_after]
Rack::Utils.set_cookie_header!(response[1], @key, cookie.merge(options))
end
end
Expand Down
2 changes: 1 addition & 1 deletion vendor/rails/actionpack/lib/action_pack/version.rb
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ module ActionPack #:nodoc:
module VERSION #:nodoc:
MAJOR = 2
MINOR = 3
TINY = 11
TINY = 12

STRING = [MAJOR, MINOR, TINY].join('.')
end
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
require 'abstract_unit'

# You need to start a memcached server inorder to run these tests
class AbstractStoreTest < ActionController::IntegrationTest
SessionKey = '_myapp_session'
DispatcherApp = ActionController::Dispatcher.new

class TestController < ActionController::Base
def get_session
session[:test] = 'test'
head :ok
end
end

def test_expiry_after
with_test_route_set(:expire_after => 5 * 60) do
get 'get_session'
assert_response :success
assert_match /expires=\S+/, headers['Set-Cookie']
end
end

protected

def with_test_route_set(options = {})
with_routing do |set|
set.draw do |map|
map.with_options :controller => "abstract_store_test/test" do |c|
c.connect "/:action"
end
end

options = { :key => SessionKey, :secret => 'SessionSecret' }.merge!(options)
@integration_session = open_session(TestStore.new(DispatcherApp, options))

yield
end
end

class TestStore < ActionController::Session::AbstractStore
def initialize(app, options = {})
super
@_store = Hash.new({})
end

private

def get_session(env, sid)
sid ||= generate_sid
session = @_store[sid]
[sid, session]
end

def set_session(env, sid, session_data)
@_store[sid] = session_data
end

def destroy(env)
@_store.delete(sid)
end
end

end

Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,12 @@ def call_session_clear
head :ok
end

def call_reset_session_twice
reset_session
reset_session
head :ok
end

def call_reset_session
reset_session
head :ok
Expand Down Expand Up @@ -190,6 +196,44 @@ def test_doesnt_write_session_cookie_if_session_is_unchanged
end
end

def test_calling_session_reset_twice
with_test_route_set do
get '/set_session_value'
assert_response :success
session_payload = response.body
assert_equal "_myapp_session=#{response.body}; path=/; HttpOnly",
headers['Set-Cookie']

get '/call_reset_session_twice'
assert_response :success
assert_not_equal "", headers['Set-Cookie']
assert_not_equal session_payload, cookies[SessionKey]

get '/get_session_value'
assert_response :success
assert_equal 'foo: nil', response.body
end
end

def test_setting_session_value_after_session_reset
with_test_route_set do
get '/set_session_value'
assert_response :success
session_payload = response.body
assert_equal "_myapp_session=#{response.body}; path=/; HttpOnly",
headers['Set-Cookie']

get '/call_reset_session'
assert_response :success
assert_not_equal "", headers['Set-Cookie']
assert_not_equal session_payload, cookies[SessionKey]

get '/get_session_value'
assert_response :success
assert_equal 'foo: nil', response.body
end
end

def test_setting_session_value_after_session_reset
with_test_route_set do
get '/set_session_value'
Expand Down
12 changes: 5 additions & 7 deletions vendor/rails/activerecord/Rakefile
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
require 'rubygems'
require 'rake'
require 'rake/testtask'
require 'rake/rdoctask'
require 'rdoc/task'
require 'rake/packagetask'
require 'rake/gempackagetask'
require 'rubygems/package_task'

require File.join(File.dirname(__FILE__), 'lib', 'active_record', 'version')
require File.expand_path(File.dirname(__FILE__)) + "/test/config"
Expand Down Expand Up @@ -157,7 +157,7 @@ task :rebuild_frontbase_databases => 'frontbase:rebuild_databases'

# Generate the RDoc documentation

Rake::RDocTask.new { |rdoc|
RDoc::Task.new { |rdoc|
rdoc.rdoc_dir = 'doc'
rdoc.title = "Active Record -- Object-relation mapping put on rails"
rdoc.options << '--line-numbers' << '--inline-source' << '-A cattr_accessor=object'
Expand Down Expand Up @@ -192,16 +192,14 @@ spec = Gem::Specification.new do |s|
s.files = s.files + Dir.glob( "#{dir}/**/*" ).delete_if { |item| item.include?( "\.svn" ) }
end

s.add_dependency('activesupport', '= 2.3.11' + PKG_BUILD)
s.add_dependency('activesupport', '= 2.3.12' + PKG_BUILD)

s.files.delete FIXTURES_ROOT + "/fixture_database.sqlite"
s.files.delete FIXTURES_ROOT + "/fixture_database_2.sqlite"
s.files.delete FIXTURES_ROOT + "/fixture_database.sqlite3"
s.files.delete FIXTURES_ROOT + "/fixture_database_2.sqlite3"
s.require_path = 'lib'
s.autorequire = 'active_record'

s.has_rdoc = true
s.extra_rdoc_files = %w( README )
s.rdoc_options.concat ['--main', 'README']

Expand All @@ -211,7 +209,7 @@ spec = Gem::Specification.new do |s|
s.rubyforge_project = "activerecord"
end

Rake::GemPackageTask.new(spec) do |p|
Gem::PackageTask.new(spec) do |p|
p.gem_spec = spec
p.need_tar = true
p.need_zip = true
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -381,7 +381,7 @@ def method_missing(method, *args, &block)
when /^find_or_create_by_(.*)$/
rest = $1
find_args = pull_finder_args_from(DynamicFinderMatch.match(method).attribute_names, *args)
return send("find_by_#{rest}", find_args) ||
return send("find_by_#{rest}", *find_args) ||
method_missing("create_by_#{rest}", *args, &block)
when /^create_by_(.*)$/
return create($1.split('_and_').zip(args).inject({}) { |h,kv| k,v=kv ; h[k] = v ; h }, &block)
Expand Down
2 changes: 1 addition & 1 deletion vendor/rails/activerecord/lib/active_record/base.rb
Original file line number Diff line number Diff line change
Expand Up @@ -1286,7 +1286,7 @@ def set_sequence_name(value = nil, &block)

# Turns the +table_name+ back into a class name following the reverse rules of +table_name+.
def class_name(table_name = table_name) # :nodoc:
ActiveSupport::Deprecation.warn("ActiveRecord::Base#class_name is deprecated and will be removed in Rails 2.3.9.", caller)
ActiveSupport::Deprecation.warn("ActiveRecord::Base#class_name is deprecated and will be removed in Rails 3.", caller)

# remove any prefix and/or suffix from the table name
class_name = table_name[table_name_prefix.length..-(table_name_suffix.length + 1)].camelize
Expand Down
Loading

0 comments on commit ceda51b

Please sign in to comment.