diff --git a/lib/grape/exceptions/validation_errors.rb b/lib/grape/exceptions/validation_errors.rb index 3a39602d5..b9a7ae8f2 100644 --- a/lib/grape/exceptions/validation_errors.rb +++ b/lib/grape/exceptions/validation_errors.rb @@ -8,6 +8,7 @@ class ValidationErrors < Grape::Exceptions::Base attr_reader :errors def initialize(args = {}) + fail 'Params are missing:' unless args.key? :errors @errors = {} args[:errors].each do |validation_error| @errors[validation_error.params] ||= [] diff --git a/spec/grape/exceptions/validation_errors_spec.rb b/spec/grape/exceptions/validation_errors_spec.rb index 31b1ef0c3..5575c8c5f 100644 --- a/spec/grape/exceptions/validation_errors_spec.rb +++ b/spec/grape/exceptions/validation_errors_spec.rb @@ -19,6 +19,10 @@ it 'should assign headers through base class' do expect(subject.headers).to eq(headers) end + + it 'fails when params are missing' do + expect { described_class.new(headers: headers) }.to raise_error(RuntimeError, 'Params are missing:') + end end context 'message' do