diff options
Diffstat (limited to 'spec/controllers/projects/compare_controller_spec.rb')
-rw-r--r-- | spec/controllers/projects/compare_controller_spec.rb | 25 |
1 files changed, 18 insertions, 7 deletions
diff --git a/spec/controllers/projects/compare_controller_spec.rb b/spec/controllers/projects/compare_controller_spec.rb index 48afd42e8ff..62b93a2728b 100644 --- a/spec/controllers/projects/compare_controller_spec.rb +++ b/spec/controllers/projects/compare_controller_spec.rb @@ -25,15 +25,25 @@ RSpec.describe Projects::CompareController do end describe 'GET index' do + let(:params) { { namespace_id: project.namespace, project_id: project } } + render_views before do - get :index, params: { namespace_id: project.namespace, project_id: project } + get :index, params: params end it 'returns successfully' do expect(response).to be_successful end + + context 'with incorrect parameters' do + let(:params) { super().merge(from: { invalid: :param }, to: { also: :invalid }) } + + it 'returns successfully' do + expect(response).to be_successful + end + end end describe 'GET show' do @@ -340,12 +350,13 @@ RSpec.describe Projects::CompareController do context 'when sending invalid params' do where(:from_ref, :to_ref, :from_project_id, :expected_redirect_params) do - '' | '' | '' | {} - 'main' | '' | '' | { from: 'main' } - '' | 'main' | '' | { to: 'main' } - '' | '' | '1' | { from_project_id: 1 } - 'main' | '' | '1' | { from: 'main', from_project_id: 1 } - '' | 'main' | '1' | { to: 'main', from_project_id: 1 } + '' | '' | '' | {} + 'main' | '' | '' | { from: 'main' } + '' | 'main' | '' | { to: 'main' } + '' | '' | '1' | { from_project_id: 1 } + 'main' | '' | '1' | { from: 'main', from_project_id: 1 } + '' | 'main' | '1' | { to: 'main', from_project_id: 1 } + ['a'] | ['b'] | ['c'] | {} end with_them do |