Do not cache I18n strings when truncating a long diff (#5089).

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@6073 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
Jean-Baptiste Barth
2011-06-13 22:09:01 +00:00
parent 22de20fe61
commit 115d227298
2 changed files with 32 additions and 1 deletions

View File

@@ -56,6 +56,8 @@ class RepositoriesGitControllerTest < ActionController::TestCase
if @char_1.respond_to?(:force_encoding)
@char_1.force_encoding('UTF-8')
end
Setting.default_language = 'en'
end
if File.directory?(REPOSITORY_PATH)
@@ -219,6 +221,27 @@ class RepositoriesGitControllerTest < ActionController::TestCase
end
end
def test_diff_truncated
@repository.fetch_changesets
@repository.reload
Setting.diff_max_lines_displayed = 5
# Truncated diff of changeset 2f9c0091
with_cache do
get :diff, :id => PRJ_ID, :type => 'inline',
:rev => '2f9c0091c754a91af7a9c478e36556b4bde8dcf7'
assert_response :success
assert @response.body.include?("... This diff was truncated")
Setting.default_language = 'fr'
get :diff, :id => PRJ_ID, :type => 'inline',
:rev => '2f9c0091c754a91af7a9c478e36556b4bde8dcf7'
assert_response :success
assert ! @response.body.include?("... This diff was truncated")
assert @response.body.include?("... Ce diff")
end
end
def test_diff_two_revs
@repository.fetch_changesets
@repository.reload
@@ -361,4 +384,12 @@ class RepositoriesGitControllerTest < ActionController::TestCase
puts "Git test repository NOT FOUND. Skipping functional tests !!!"
def test_fake; assert true end
end
private
def with_cache(&block)
before = ActionController::Base.perform_caching
ActionController::Base.perform_caching = true
block.call
ActionController::Base.perform_caching = before
end
end