lib/sinatra/swagger/param_validator.rb in sinatra-swagger-0.2.0 vs lib/sinatra/swagger/param_validator.rb in sinatra-swagger-0.2.1
- old
+ new
@@ -4,10 +4,24 @@
module Swagger
module ParamValidator
def self.registered(app)
app.register Swagger::SwaggerLinked
+ app.helpers do
+ def invalid_params(invalidities)
+ content_type :json
+ halt(
+ 400,
+ {
+ error: 'invalid_params',
+ developerMessage: 'Some of the given parameters were invalid according to the Swagger spec.',
+ invalidities: invalidities
+ }.to_json
+ )
+ end
+ end
+
app.before do
next if swagger_spec.nil?
_, captures, spec = swagger_spec.values
invalidities = Hash[(spec['parameters'] || []).map { |details|
@@ -43,10 +57,10 @@
params[param_name] = parameter
nil
}.compact]
- halt 400, invalidities.to_json if invalidities.any?
+ invalid_params(invalidities) if invalidities.any?
end
end
end
end
\ No newline at end of file