Improve tests for merge request diff model
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
This commit is contained in:
parent
afe28b7be3
commit
cdcc11d48f
|
@ -169,7 +169,7 @@ class MergeRequestDiff < ActiveRecord::Base
|
|||
|
||||
def compare_with(sha, straight = true)
|
||||
# When compare merge request versions we want diff A..B instead of A...B
|
||||
# so we handle cases when user squash and rebase commits in one of versions.
|
||||
# so we handle cases when user does squash and rebase of the commits between versions.
|
||||
# For this reason we set straight to true by default.
|
||||
CompareService.new.execute(project, head_commit_sha, project, sha, straight)
|
||||
end
|
||||
|
|
|
@ -74,27 +74,37 @@ describe MergeRequestDiff, models: true do
|
|||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
describe '#commits_sha' do
|
||||
shared_examples 'returning all commits SHA' do
|
||||
it 'returns all commits SHA' do
|
||||
commits_sha = subject.commits_sha
|
||||
describe '#commits_sha' do
|
||||
shared_examples 'returning all commits SHA' do
|
||||
it 'returns all commits SHA' do
|
||||
commits_sha = subject.commits_sha
|
||||
|
||||
expect(commits_sha).to eq(subject.commits.map(&:sha))
|
||||
end
|
||||
expect(commits_sha).to eq(subject.commits.map(&:sha))
|
||||
end
|
||||
end
|
||||
|
||||
context 'when commits were loaded' do
|
||||
before do
|
||||
subject.commits
|
||||
end
|
||||
|
||||
context 'when commits were loaded' do
|
||||
before do
|
||||
subject.commits
|
||||
end
|
||||
it_behaves_like 'returning all commits SHA'
|
||||
end
|
||||
|
||||
it_behaves_like 'returning all commits SHA'
|
||||
end
|
||||
context 'when commits were not loaded' do
|
||||
it_behaves_like 'returning all commits SHA'
|
||||
end
|
||||
end
|
||||
|
||||
context 'when commits were not loaded' do
|
||||
it_behaves_like 'returning all commits SHA'
|
||||
end
|
||||
describe '#compare_with' do
|
||||
subject { create(:merge_request).merge_request_diff }
|
||||
|
||||
it 'delegates compare to the service' do
|
||||
expect(CompareService).to receive(:new).and_call_original
|
||||
|
||||
subject.compare_with('ae73cb07c9eeaf35924a10f713b364d32b2dd34f')
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue