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