summaryrefslogtreecommitdiff
path: root/spec/models/merge_request_spec.rb
diff options
context:
space:
mode:
authorKamil Trzcinski <ayufan@ayufan.eu>2016-08-15 22:53:09 +0200
committerKamil Trzcinski <ayufan@ayufan.eu>2016-08-15 22:53:09 +0200
commitdb3c5a042d2cd03fb64d7f85b130d065dce3eb42 (patch)
tree432455a0f3e25d2de1b2d56ef865601313c1f544 /spec/models/merge_request_spec.rb
parentaa8cb00b58f5f37e90e27b443f2fea4842ab47d3 (diff)
downloadgitlab-ce-db3c5a042d2cd03fb64d7f85b130d065dce3eb42.tar.gz
Use merge_request_diff instead of doubles for testing pipelines for Merge Requests
Diffstat (limited to 'spec/models/merge_request_spec.rb')
-rw-r--r--spec/models/merge_request_spec.rb21
1 files changed, 8 insertions, 13 deletions
diff --git a/spec/models/merge_request_spec.rb b/spec/models/merge_request_spec.rb
index a7957fe3b84..43a87e07435 100644
--- a/spec/models/merge_request_spec.rb
+++ b/spec/models/merge_request_spec.rb
@@ -425,7 +425,7 @@ describe MergeRequest, models: true do
let(:commit2) { double('commit2', sha: 'sha3') }
before do
- allow(subject).to receive(:commits).and_return([commit0, commit1, commit2])
+ allow(subject.merge_request_diff).to receive(:commits).and_return([commit0, commit1, commit2])
end
it 'returns sha of commits' do
@@ -458,20 +458,15 @@ describe MergeRequest, models: true do
end
describe '#all_pipelines' do
- let(:commit0) { double('commit0', sha: 'sha1') }
- let(:commit1) { double('commit1', sha: 'sha2') }
- let(:commit2) { double('commit2', sha: 'sha3') }
- let!(:pipeline) { create(:ci_empty_pipeline, project: subject.source_project, sha: 'sha1', ref: subject.source_branch) }
- let!(:pipeline2) { create(:ci_empty_pipeline, project: subject.source_project, sha: 'sha1', ref: subject.source_branch) }
- let!(:pipeline3) { create(:ci_empty_pipeline, project: subject.source_project, sha: 'sha2', ref: subject.source_branch) }
- let!(:pipeline4) { create(:ci_empty_pipeline, project: subject.target_project, sha: 'sha1', ref: subject.target_branch) }
-
- before do
- allow(subject).to receive(:commits).and_return([commit0, commit1, commit2])
+ let!(:pipelines) do
+ subject.merge_request_diff.commits.map do |commit|
+ create(:ci_empty_pipeline, project: subject.source_project, sha: commit.id, ref: subject.source_branch)
+ end
end
- it 'returns a pipelines from source projects' do
- expect(subject.all_pipelines).to eq([pipeline3, pipeline2, pipeline])
+ it 'returns a pipelines from source projects with proper ordering' do
+ expect(subject.all_pipelines).not_to be_empty
+ expect(subject.all_pipelines).to eq(pipelines.reverse)
end
end