Skip to content
Snippets Groups Projects

Filter by reviewer in MergeRequest List API

Merged Sincheol (David) Kim requested to merge filter-by-review-merge-request-list-api into master
All threads resolved!
@@ -502,21 +502,24 @@
context 'filter by reviewer' do
context 'with reviewer_id' do
let(:params) { { not: { reviewer_id: user2.id } } }
context 'with an id' do
let(:params) { { not: { reviewer_id: user2.id } } }
it 'returns merge requests without the reviewer given', :aggregate_failures do
get api(endpoint_path, user), params: { not: { reviewer_id: user2.id } }
it 'returns merge requests that do not have the given reviewer' do
get api(endpoint_path, user), params: { not: { reviewer_id: user2.id } }
expect(response).to have_gitlab_http_status(:ok)
expect(json_response).to be_an(Array)
expect(json_response.length).to eq(4)
expect(json_response.map { |mr| mr['id'] }).not_to include(merge_request2)
expect(response).to have_gitlab_http_status(:ok)
expect(json_response).to be_an(Array)
expect(json_response.length).to eq(4)
expect(json_response.map { |mr| mr['id'] }).not_to include(merge_request2)
end
end
context 'with None' do
let(:params) { { not: { reviewer_id: 'None' } } }
context 'with Any' do
let(:params) { { not: { reviewer_id: 'Any' } } }
it 'returns a 400' do
# Any is not supported for negated filter
get api(endpoint_path, user), params: params
expect(response).to have_gitlab_http_status(:bad_request)
@@ -524,10 +527,11 @@
end
end
context 'with Any' do
let(:params) { { not: { reviewer_id: 'Any' } } }
context 'with None' do
let(:params) { { not: { reviewer_id: 'None' } } }
it 'returns a 400' do
# None is not supported for negated filter
get api(endpoint_path, user), params: params
expect(response).to have_gitlab_http_status(:bad_request)
@@ -539,7 +543,7 @@
context 'with reviewer_username' do
let(:params) { { not: { reviewer_username: user2.username } } }
it 'returns merge requests without the reviewer given', :aggregate_failures do
it 'returns merge requests that do not have the given reviewer' do
get api(endpoint_path, user), params: params
expect(response).to have_gitlab_http_status(:ok)
@@ -549,7 +553,7 @@
end
end
context 'when both reviewer_id and reviewer_username is provided' do
context 'when both reviewer_id and reviewer_username' do
let(:params) { { not: { reviewer_id: user2.id, reviewer_username: user2.username } } }
it 'returns a 400' do
@@ -739,10 +743,10 @@
let(:params) { { scope: :all } }
context 'when reviewer_id is provided' do
context 'with reviewer_id' do
let(:params) { super().merge(reviewer_id: reviewer_id) }
context 'when reviewer_id is an id' do
context 'with an id' do
let(:reviewer_id) { user2.id }
it 'returns review requested merge requests for the given user' do
@@ -752,7 +756,7 @@
end
end
context 'when reviewer_id is Any' do
context 'with Any' do
let(:reviewer_id) { 'Any' }
it 'returns review requested merge requests for any user' do
@@ -762,7 +766,7 @@
end
end
context 'when reviewer_id is None' do
context 'with None' do
let(:reviewer_id) { 'None' }
it 'returns merge requests that has no assigned reviewers' do
@@ -779,7 +783,7 @@
end
end
context 'when reviewer_username is provided' do
context 'with reviewer_username' do
let(:params) { super().merge(reviewer_username: user2.username) }
it 'returns review requested merge requests for the given user' do
@@ -789,7 +793,7 @@
end
end
context 'when both reviewer_id and reviewer_username is provided' do
context 'with both reviewer_id and reviewer_username' do
let(:params) { super().merge(reviewer_id: user2.id, reviewer_username: user2.username) }
it 'returns a 400' do
Loading