Commit 58064027408bcbfb9e6216a3157dffd9c324848d
1 parent
0e82c981
Exists in
master
and in
4 other branches
Raise Error for diff_between/commit_between for non fork mr's in satellite
-Fixed tests to account for this -Trigger update after update_branches for list:update selecting first commit, have it also trigger sha lookup Change-Id: Ie4c3d4fbf57aeadd7d141d3704f4ea0f0684a7a5
Showing
3 changed files
with
8 additions
and
17 deletions
Show diff stats
app/views/projects/merge_requests/update_branches.js.haml
| 1 | 1 | :plain |
| 2 | 2 | $(".target_branch").html("#{escape_javascript(options_for_select(@target_branches))}"); |
| 3 | 3 | $(".target_branch").trigger("liszt:updated"); |
| 4 | - $(".mr_target_commit").html(""); | |
| 5 | 4 | \ No newline at end of file |
| 5 | + $(".mr_target_commit").html(""); | |
| 6 | + $(".target_branch").trigger("change"); | |
| 6 | 7 | \ No newline at end of file | ... | ... |
lib/gitlab/satellite/merge_action.rb
| ... | ... | @@ -74,9 +74,7 @@ module Gitlab |
| 74 | 74 | #this method doesn't take default options |
| 75 | 75 | diffs = merge_repo.diff(common_commit, "source/#{merge_request.source_branch}") |
| 76 | 76 | else |
| 77 | - common_commit = merge_repo.git.native(:merge_base, default_options, ["#{merge_request.target_branch}", "#{merge_request.source_branch}"]).strip | |
| 78 | - #this method doesn't take default options | |
| 79 | - diffs = merge_repo.diff(common_commit, "#{merge_request.source_branch}") | |
| 77 | + raise "Attempt to determine diffs between for a non forked merge request in satellite MergeRequest.id:[#{merge_request.id}]" | |
| 80 | 78 | end |
| 81 | 79 | diffs = diffs.map { |diff| Gitlab::Git::Diff.new(diff) } |
| 82 | 80 | return diffs |
| ... | ... | @@ -109,7 +107,7 @@ module Gitlab |
| 109 | 107 | if (merge_request.for_fork?) |
| 110 | 108 | commits = merge_repo.commits_between("origin/#{merge_request.target_branch}", "source/#{merge_request.source_branch}") |
| 111 | 109 | else |
| 112 | - commits = merge_repo.commits_between("#{merge_request.target_branch}", "#{merge_request.source_branch}") | |
| 110 | + raise "Attempt to determine commits between for a non forked merge request in satellite MergeRequest.id:[#{merge_request.id}]" | |
| 113 | 111 | end |
| 114 | 112 | commits = commits.map { |commit| Gitlab::Git::Commit.new(commit, nil) } |
| 115 | 113 | return commits | ... | ... |
spec/lib/gitlab/satellite/merge_action_spec.rb
| ... | ... | @@ -38,16 +38,14 @@ describe 'Gitlab::Satellite::MergeAction' do |
| 38 | 38 | end |
| 39 | 39 | |
| 40 | 40 | context 'between branches' do |
| 41 | - it 'should get proper commits between' do | |
| 41 | + it 'should raise exception -- not expected to be used by non forks' do | |
| 42 | 42 | merge_request.target_branch = @one_after_stable[0] |
| 43 | 43 | merge_request.source_branch = @master[0] |
| 44 | - commits = Gitlab::Satellite::MergeAction.new(merge_request.author, merge_request).commits_between | |
| 45 | - verify_commits(commits, @one_after_stable[1], @master[1]) | |
| 44 | + expect {Gitlab::Satellite::MergeAction.new(merge_request.author, merge_request).commits_between}.to raise_error | |
| 46 | 45 | |
| 47 | 46 | merge_request.target_branch = @wiki_branch[0] |
| 48 | 47 | merge_request.source_branch = @master[0] |
| 49 | - commits = Gitlab::Satellite::MergeAction.new(merge_request.author, merge_request).commits_between | |
| 50 | - verify_commits(commits, @wiki_branch[1], @master[1]) | |
| 48 | + expect {Gitlab::Satellite::MergeAction.new(merge_request.author, merge_request).commits_between}.to raise_error | |
| 51 | 49 | end |
| 52 | 50 | end |
| 53 | 51 | end |
| ... | ... | @@ -104,13 +102,7 @@ describe 'Gitlab::Satellite::MergeAction' do |
| 104 | 102 | it 'should get proper diffs' do |
| 105 | 103 | merge_request.target_branch = @close_commit1[0] |
| 106 | 104 | merge_request.source_branch = @master[0] |
| 107 | - diffs = Gitlab::Satellite::MergeAction.new(merge_request.author, merge_request).diffs_between_satellite | |
| 108 | - | |
| 109 | - merge_request.target_branch = @close_commit1[0] | |
| 110 | - merge_request.source_branch = @master[0] | |
| 111 | - diff = Gitlab::Satellite::MergeAction.new(merge_request.author, merge_request).diff_in_satellite | |
| 112 | - | |
| 113 | - is_a_matching_diff(diff, diffs) | |
| 105 | + expect{Gitlab::Satellite::MergeAction.new(merge_request.author, merge_request).diffs_between_satellite}.to raise_error | |
| 114 | 106 | end |
| 115 | 107 | end |
| 116 | 108 | end | ... | ... |