Include routes when loading user projects

This commit is contained in:
Jarka Kadlecova 2017-03-16 14:28:14 +01:00
parent 68e64a5b44
commit 398a70f3e5
2 changed files with 24 additions and 2 deletions

View File

@ -99,8 +99,7 @@ module TodosHelper
end
def todo_projects_options
projects = current_user.authorized_projects.sorted_by_activity.non_archived
projects = projects.includes(:namespace)
projects = current_user.authorized_projects.sorted_by_activity.non_archived.with_route
projects = projects.map do |project|
{ id: project.id, text: project.name_with_namespace }

View File

@ -0,0 +1,23 @@
require "spec_helper"
describe TodosHelper do
describe '#todo_projects_options' do
let(:projects) { create_list(:empty_project, 3) }
let(:user) { create(:user) }
it 'returns users authorised projects in json format' do
projects.first.add_developer(user)
projects.second.add_developer(user)
allow(helper).to receive(:current_user).and_return(user)
expected_results = [
{ 'id' => '', 'text' => 'Any Project' },
{ 'id' => projects.second.id, 'text' => projects.second.name_with_namespace },
{ 'id' => projects.first.id, 'text' => projects.first.name_with_namespace }
]
expect(JSON.parse(helper.todo_projects_options)).to match_array(expected_results)
end
end
end