Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'spec/helpers/commits_helper_spec.rb')
-rw-r--r--spec/helpers/commits_helper_spec.rb28
1 files changed, 28 insertions, 0 deletions
diff --git a/spec/helpers/commits_helper_spec.rb b/spec/helpers/commits_helper_spec.rb
index dd268c2411f..e036e97f745 100644
--- a/spec/helpers/commits_helper_spec.rb
+++ b/spec/helpers/commits_helper_spec.rb
@@ -82,4 +82,32 @@ describe CommitsHelper do
expect(helper.commit_to_html(commit, ref, project)).to include('<div class="commit-content')
end
end
+
+ describe 'commit_path' do
+ it 'returns a persisted merge request commit path' do
+ project = create(:project, :repository)
+ persisted_merge_request = create(:merge_request, source_project: project, target_project: project)
+ commit = project.repository.commit
+
+ expect(helper.commit_path(persisted_merge_request.project, commit, merge_request: persisted_merge_request))
+ .to eq(diffs_project_merge_request_path(project, persisted_merge_request, commit_id: commit.id))
+ end
+
+ it 'returns a non-persisted merge request commit path which commits still reside in the source project' do
+ source_project = create(:project, :repository)
+ target_project = create(:project, :repository)
+ non_persisted_merge_request = build(:merge_request, source_project: source_project, target_project: target_project)
+ commit = source_project.repository.commit
+
+ expect(helper.commit_path(non_persisted_merge_request.project, commit, merge_request: non_persisted_merge_request))
+ .to eq(project_commit_path(source_project, commit))
+ end
+
+ it 'returns a project commit path' do
+ project = create(:project, :repository)
+ commit = project.repository.commit
+
+ expect(helper.commit_path(project, commit)).to eq(project_commit_path(project, commit))
+ end
+ end
end