summaryrefslogtreecommitdiff
path: root/spec/models/merge_request_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/models/merge_request_spec.rb')
-rw-r--r--spec/models/merge_request_spec.rb25
1 files changed, 22 insertions, 3 deletions
diff --git a/spec/models/merge_request_spec.rb b/spec/models/merge_request_spec.rb
index bfad1da1e21..50bb194ef71 100644
--- a/spec/models/merge_request_spec.rb
+++ b/spec/models/merge_request_spec.rb
@@ -874,7 +874,7 @@ describe MergeRequest do
subject(:merge_request) { build(:merge_request) }
before do
- expect(diff).to receive(:modified_paths).and_return(paths)
+ allow(diff).to receive(:modified_paths).and_return(paths)
end
context 'when past_merge_request_diff is specified' do
@@ -890,10 +890,29 @@ describe MergeRequest do
let(:compare) { double(:compare) }
let(:diff) { compare }
- it 'returns affected file paths from compare' do
+ before do
merge_request.compare = compare
- expect(merge_request.modified_paths).to eq(paths)
+ expect(merge_request).to receive(:diff_stats).and_return(diff_stats)
+ end
+
+ context 'and diff_stats are not present' do
+ let(:diff_stats) { nil }
+
+ it 'returns affected file paths from compare' do
+ expect(merge_request.modified_paths).to eq(paths)
+ end
+ end
+
+ context 'and diff_stats are present' do
+ let(:diff_stats) { double(:diff_stats) }
+
+ it 'returns affected file paths from compare' do
+ diff_stats_path = double(:diff_stats_paths)
+ expect(diff_stats).to receive(:paths).and_return(diff_stats_path)
+
+ expect(merge_request.modified_paths).to eq(diff_stats_path)
+ end
end
end