From 4dc56cd943b6cb5cfaae8bd21db2c8ef82e7a50c Mon Sep 17 00:00:00 2001 From: Go MAEDA Date: Wed, 1 Mar 2023 08:47:28 +0000 Subject: [PATCH] Exporting UserQuery does not use the query name as file name (#37674, #38182). Patch by Takenori TAKAKI. git-svn-id: https://svn.redmine.org/redmine/trunk@22121 e93f8b46-1217-0410-a6f0-8f06a7374b81 --- app/controllers/users_controller.rb | 2 +- test/functional/users_controller_test.rb | 13 +++++++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb index a6cad6b2f..77ec1a601 100644 --- a/app/controllers/users_controller.rb +++ b/app/controllers/users_controller.rb @@ -61,7 +61,7 @@ class UsersController < ApplicationController format.csv do # Export all entries @entries = scope.to_a - send_data(query_to_csv(@entries, @query, params), :type => 'text/csv; header=present', :filename => 'users.csv') + send_data(query_to_csv(@entries, @query, params), :type => 'text/csv; header=present', :filename => "#{filename_for_export(@query, 'users')}.csv") end format.api do @offset, @limit = api_offset_and_limit diff --git a/test/functional/users_controller_test.rb b/test/functional/users_controller_test.rb index ccb40ce4c..e452371ff 100644 --- a/test/functional/users_controller_test.rb +++ b/test/functional/users_controller_test.rb @@ -280,6 +280,19 @@ class UsersControllerTest < Redmine::ControllerTest assert_equal 'text/csv; header=present', @response.media_type end + def test_index_csv_filename_without_query_id_param + get :index, :params => {:format => 'csv'} + assert_response :success + assert_match /users.csv/, @response.headers['Content-Disposition'] + end + + def test_index_csv_filename_with_query_id_param + query = UserQuery.create!(:name => 'My Query Name', :visibility => UserQuery::VISIBILITY_PUBLIC) + get :index, :params => {:query_id => query.id, :format => 'csv'} + assert_response :success + assert_match /my_query_name\.csv/, @response.headers['Content-Disposition'] + end + def test_show @request.session[:user_id] = nil get :show, :params => {:id => 2} -- 2.39.5