GitLab wurde erfolgreich aktualisiert. Dank regelmäßiger Updates bleibt das THM GitLab sicher und Sie profitieren von den neuesten Funktionen. Danke für Ihre Geduld.

Commit 8e3485d8 authored by Robert Speicher's avatar Robert Speicher

Merge branch 'fix-git-push-service-specs' into 'master'

Fixed the GitPushService specs

See merge request !3139
parents fdfcc1ac 53719ecb
......@@ -9,6 +9,7 @@ def allowed(user, subject)
when CommitStatus then commit_status_abilities(user, subject)
when Project then project_abilities(user, subject)
when Issue then issue_abilities(user, subject)
when ExternalIssue then external_issue_abilities(user, subject)
when Note then note_abilities(user, subject)
when ProjectSnippet then project_snippet_abilities(user, subject)
when PersonalSnippet then personal_snippet_abilities(user, subject)
......@@ -424,6 +425,10 @@ def abilities
end
end
def external_issue_abilities(user, subject)
project_abilities(user, subject.project)
end
private
def named_abilities(name)
......
......@@ -271,22 +271,24 @@
allow(project.repository).to receive(:commits_between).
and_return([closing_commit])
project.team << [commit_author, :master]
end
context "to default branches" do
it "closes issues" do
execute_service(project, user, @oldrev, @newrev, @ref )
execute_service(project, commit_author, @oldrev, @newrev, @ref )
expect(Issue.find(issue.id)).to be_closed
end
it "adds a note indicating that the issue is now closed" do
expect(SystemNoteService).to receive(:change_status).with(issue, project, commit_author, "closed", closing_commit)
execute_service(project, user, @oldrev, @newrev, @ref )
execute_service(project, commit_author, @oldrev, @newrev, @ref )
end
it "doesn't create additional cross-reference notes" do
expect(SystemNoteService).not_to receive(:cross_reference)
execute_service(project, user, @oldrev, @newrev, @ref )
execute_service(project, commit_author, @oldrev, @newrev, @ref )
end
it "doesn't close issues when external issue tracker is in use" do
......@@ -294,7 +296,7 @@
# The push still shouldn't create cross-reference notes.
expect do
execute_service(project, user, @oldrev, @newrev, 'refs/heads/hurf' )
execute_service(project, commit_author, @oldrev, @newrev, 'refs/heads/hurf' )
end.not_to change { Note.where(project_id: project.id, system: true).count }
end
end
......@@ -316,7 +318,6 @@
end
end
# EE-only tests
context "for jira issue tracker" do
include JiraServiceHelper
......@@ -366,7 +367,7 @@
}
}.to_json
execute_service(project, user, @oldrev, @newrev, @ref )
execute_service(project, commit_author, @oldrev, @newrev, @ref )
expect(WebMock).to have_requested(:post, jira_api_transition_url).with(
body: transition_body
).once
......@@ -377,7 +378,7 @@
body: "Issue solved with [#{closing_commit.id}|http://localhost/#{project.path_with_namespace}/commit/#{closing_commit.id}]."
}.to_json
execute_service(project, user, @oldrev, @newrev, @ref )
execute_service(project, commit_author, @oldrev, @newrev, @ref )
expect(WebMock).to have_requested(:post, jira_api_comment_url).with(
body: comment_body
).once
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment