Upgraded to Rails 2.3.4 (#3597)

* Ran the Rails upgrade
* Upgraded to Rails Engines 2.3.2
* Added a plugin to let Engines override application views.
* Converted tests to use the new classes:
** ActionController::TestCase for functional
** ActiveSupport::TestCase for units
* Converted ActiveRecord::Error message to a string.
* ActiveRecord grouping returns an ordered hash which doesn't have #sort!
* Updated the I18n storage_units format.
* Added some default initializers from a fresh rails app
* Changed the order of check_box_tags and hidden_field_tags.  The hidden tag
  needs to appear first in Rails 2.3, otherwise it will override any value in
  the check_box_tag.
* Removed the custom handler for when the cookie store is tampered with.
  Rails 2.3 removed the TamperedWithCookie exception and instead Rails will not
  load the data from it when it's been tampered with (e.g. no user login).
* Fixed mail layouts, 2.3 has problems with implicit multipart emails that
  use layouts.  Also removed some custom Redmine mailer code.
* Fixed a bug that occurred in tests where the "required" span tag would be
  added to the :field_status translation.  This resulted in an email string of:

    <li>Status<span class="required"> *</span><span class="required"> *</span>

  Instead of:

    <li>Status: New</li>

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2887 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
Eric Davis
2009-09-13 17:14:35 +00:00
parent fb349dc4ab
commit 7b0cb6aba8
263 changed files with 1636 additions and 440 deletions
@@ -0,0 +1,3 @@
class AppAndPluginLibModel < ActiveRecord::Base
def self.report_location; TestHelper::report_location(__FILE__); end
end
+42
View File
@@ -0,0 +1,42 @@
module TestHelper
def self.report_location(path)
[RAILS_ROOT + '/', 'vendor/plugins/'].each { |part| path.sub! part, ''}
path = path.split('/')
location, subject = path.first, path.last
if subject.sub! '.rb', ''
subject = subject.classify
else
subject.sub! '.html.erb', ''
end
"#{subject} (from #{location})"
end
def self.view_path_for path
[RAILS_ROOT + '/', 'vendor/plugins/', '.html.erb'].each { |part| path.sub! part, ''}
parts = path.split('/')
parts[(parts.index('views')+1)..-1].join('/')
end
end
class Test::Unit::TestCase
# Add more helper methods to be used by all tests here...
def get_action_on_controller(*args)
action = args.shift
with_controller *args
get action
end
def with_controller(controller, namespace = nil)
classname = controller.to_s.classify + 'Controller'
classname = namespace.to_s.classify + '::' + classname unless namespace.nil?
@controller = classname.constantize.new
end
def assert_response_body(expected)
assert_equal expected, @response.body
end
end
# Because we're testing this behaviour, we actually want these features on!
Engines.disable_application_view_loading = false
Engines.disable_application_code_loading = false
+7
View File
@@ -0,0 +1,7 @@
module RenderInformation
def render_class_and_action(note = nil, options={})
text = "rendered in #{self.class.name}##{params[:action]}"
text += " (#{note})" unless note.nil?
render options.update(:text => text)
end
end