diff options
author | Bob Van Landuyt <bob@vanlanduyt.co> | 2018-04-06 20:58:53 +0300 |
---|---|---|
committer | Bob Van Landuyt <bob@vanlanduyt.co> | 2018-04-11 11:51:17 +0300 |
commit | 71ccfde322b633e9245bee6acba1e64cb7640f19 (patch) | |
tree | e81b9d66257711bd9a3dd31d70d623b1a1927502 /spec/controllers/projects/issues_controller_spec.rb | |
parent | 083b0a9b034a0e4004c012444f1a8811bd96ed29 (diff) |
Correct permissions for creating merge requests from issues
This could only be possible for users that can create merge requests
within a project.
So they need to be a allowed to create a branch and create a merge request.
Diffstat (limited to 'spec/controllers/projects/issues_controller_spec.rb')
-rw-r--r-- | spec/controllers/projects/issues_controller_spec.rb | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/spec/controllers/projects/issues_controller_spec.rb b/spec/controllers/projects/issues_controller_spec.rb index 01b5506b64b..6c6b1e4a500 100644 --- a/spec/controllers/projects/issues_controller_spec.rb +++ b/spec/controllers/projects/issues_controller_spec.rb @@ -938,7 +938,7 @@ describe Projects::IssuesController do end describe 'POST create_merge_request' do - let(:project) { create(:project, :repository) } + let(:project) { create(:project, :repository, :public) } before do project.add_developer(user) @@ -955,6 +955,22 @@ describe Projects::IssuesController do expect(response).to match_response_schema('merge_request') end + it 'is not available when the project is archived' do + project.update(archived: true) + + create_merge_request + + expect(response).to have_gitlab_http_status(404) + end + + it 'is not available for users who cannot create merge requests' do + sign_in(create(:user)) + + create_merge_request + + expect(response).to have_gitlab_http_status(404) + end + def create_merge_request post :create_merge_request, namespace_id: project.namespace.to_param, project_id: project.to_param, |