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 | ... | ... |