summaryrefslogtreecommitdiffstats
path: root/test/functional/wiki_controller_test.rb
diff options
context:
space:
mode:
authorGo MAEDA <maeda@farend.jp>2021-04-01 15:19:16 +0000
committerGo MAEDA <maeda@farend.jp>2021-04-01 15:19:16 +0000
commit094628e6947e9a6cf889d01ed34cfbf32e1d73b8 (patch)
tree39cf87effbe5b52e4c616434314a5d984f61b61c /test/functional/wiki_controller_test.rb
parent78a5d9f667c586d1506ba699a17555deeb7d128a (diff)
downloadredmine-094628e6947e9a6cf889d01ed34cfbf32e1d73b8.tar.gz
redmine-094628e6947e9a6cf889d01ed34cfbf32e1d73b8.zip
Remove #filename_for_content_disposition for MS browsers (#29914, #32914).
Patch by Pavel Rosický. git-svn-id: http://svn.redmine.org/redmine/trunk@20892 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'test/functional/wiki_controller_test.rb')
-rw-r--r--test/functional/wiki_controller_test.rb11
1 files changed, 6 insertions, 5 deletions
diff --git a/test/functional/wiki_controller_test.rb b/test/functional/wiki_controller_test.rb
index 1fd8a9492..032d3f30e 100644
--- a/test/functional/wiki_controller_test.rb
+++ b/test/functional/wiki_controller_test.rb
@@ -1152,7 +1152,7 @@ class WikiControllerTest < Redmine::ControllerTest
assert_include 'h1. CookBook documentation v2', @response.body
end
- def test_show_filename_should_be_uri_encoded_for_ms_browsers
+ def test_show_filename_should_be_uri_encoded
@request.session[:user_id] = 2
title = 'Этика_менеджмента'
%w|pdf html txt|.each do |format|
@@ -1160,14 +1160,15 @@ class WikiControllerTest < Redmine::ControllerTest
@request.user_agent = ""
get :show, :params => {:project_id => 1, :id => title, :format => format}
assert_response :success
- assert_equal "attachment; filename=\"#{title}.#{format}\"",
+ ascii_filename = "%3F%3F%3F%3F%3F_%3F%3F%3F%3F%3F%3F%3F%3F%3F%3F%3F.#{format}"
+ utf8_filename = "%D0%AD%D1%82%D0%B8%D0%BA%D0%B0_%D0%BC%D0%B5%D0%BD%D0%B5%D0%B4%D0%B6%D0%BC%D0%B5%D0%BD%D1%82%D0%B0.#{format}"
+ assert_equal "attachment; filename=\"#{ascii_filename}\"; filename*=UTF-8''#{utf8_filename}",
@response.headers['Content-Disposition']
- # Microsoft's browsers: filename should be URI encoded
+ # Microsoft's browsers
@request.user_agent = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36 Edge/15.15063'
get :show, :params => {:project_id => 1, :id => title, :format => format}
assert_response :success
- filename = Addressable::URI.encode("#{title}.#{format}")
- assert_equal "attachment; filename=\"#{filename}\"",
+ assert_equal "attachment; filename=\"#{ascii_filename}\"; filename*=UTF-8''#{utf8_filename}",
@response.headers['Content-Disposition']
end
end