##// END OF EJS Templates
Fixed that a cross-project custom query is not remembered inside project (#9738)....
Jean-Philippe Lang -
r7993:12077a4d4471
parent child
Show More
@@ -85,7 +85,8 module QueriesHelper
85 else
85 else
86 # retrieve from session
86 # retrieve from session
87 @query = Query.find_by_id(session[:query][:id]) if session[:query][:id]
87 @query = Query.find_by_id(session[:query][:id]) if session[:query][:id]
88 @query ||= Query.new(:name => "_", :project => @project, :filters => session[:query][:filters], :group_by => session[:query][:group_by], :column_names => session[:query][:column_names])
88 @query ||= Query.new(:name => "_", :filters => session[:query][:filters], :group_by => session[:query][:group_by], :column_names => session[:query][:column_names])
89 @query.project = @project
89 end
90 end
90 end
91 end
91
92
@@ -254,6 +254,28 class IssuesControllerTest < ActionController::TestCase
254 assert_not_nil assigns(:issue_count_by_group)
254 assert_not_nil assigns(:issue_count_by_group)
255 end
255 end
256
256
257 def test_index_with_query_id_and_project_id_should_set_session_query
258 get :index, :project_id => 1, :query_id => 4
259 assert_response :success
260 assert_kind_of Hash, session[:query]
261 assert_equal 4, session[:query][:id]
262 assert_equal 1, session[:query][:project_id]
263 end
264
265 def test_index_with_cross_project_query_in_session_should_show_project_issues
266 q = Query.create!(:name => "test", :user_id => 2, :is_public => false, :project => nil)
267 @request.session[:query] = {:id => q.id, :project_id => 1}
268
269 with_settings :display_subprojects_issues => '0' do
270 get :index, :project_id => 1
271 end
272 assert_response :success
273 assert_not_nil assigns(:query)
274 assert_equal q.id, assigns(:query).id
275 assert_equal 1, assigns(:query).project_id
276 assert_equal [1], assigns(:issues).map(&:project_id).uniq
277 end
278
257 def test_private_query_should_not_be_available_to_other_users
279 def test_private_query_should_not_be_available_to_other_users
258 q = Query.create!(:name => "private", :user => User.find(2), :is_public => false, :project => nil)
280 q = Query.create!(:name => "private", :user => User.find(2), :is_public => false, :project => nil)
259 @request.session[:user_id] = 3
281 @request.session[:user_id] = 3
General Comments 0
You need to be logged in to leave comments. Login now