example/api/endpoints.rb in grape-swagger-0.20.2 vs example/api/endpoints.rb in grape-swagger-0.20.3

- old
+ new

@@ -16,110 +16,109 @@ } end end class Splines < Grape::API - @@splines = [] namespace :splines do # desc 'Get all splines', - is_array: true, - http_codes: [ - { code: 200, message: 'get Splines', model: Api::Entities::Splines }, - { code: 422, message: 'SplinesOutError' } - ] + is_array: true, + http_codes: [ + { code: 200, message: 'get Splines', model: Api::Entities::Splines }, + { code: 422, message: 'SplinesOutError' } + ] get do present :items, @@splines, with: Entities::Splines end # desc 'Return a spline.', - http_codes: [ - { code: 200, message: 'get Splines' }, - { code: 422, message: 'SplinesOutError' } - ] + http_codes: [ + { code: 200, message: 'get Splines' }, + { code: 422, message: 'SplinesOutError' } + ] params do requires :id, type: Integer, desc: 'Spline id.' end get ':id' do - error!({ code: 422, message: 'SplinesOutError' }) unless @@splines[params[:id] - 1] + error!(code: 422, message: 'SplinesOutError') unless @@splines[params[:id] - 1] present @@splines[params[:id] - 1], with: Entities::Splines end # desc 'Create a spline.', - http_codes: [ - { code: 201, message: 'Spline created', model: Api::Entities::Splines } - ] + http_codes: [ + { code: 201, message: 'Spline created', model: Api::Entities::Splines } + ] params do requires :spline, type: Hash do requires :x, type: Numeric requires :y, type: Numeric end optional :reticulated, type: Boolean, default: true, desc: 'True if the spline is reticulated.' end post do spline = Spline.new - spline.id = @@splines.size + 1 - spline.x = (params[:spline][:x]/params[:spline][:y] || 0.0) - spline.y = (params[:spline][:y]/params[:spline][:x] || 0.0) + spline.id = @@splines.size + 1 + spline.x = (params[:spline][:x] / params[:spline][:y] || 0.0) + spline.y = (params[:spline][:y] / params[:spline][:x] || 0.0) spline.reticulated = params[:reticulated] @@splines << spline present spline, with: Entities::Splines end # desc 'Update a spline.', - http_codes: [ - { code: 200, message: 'update Splines', model: Api::Entities::Splines }, - { code: 422, message: 'SplinesOutError' } - ] + http_codes: [ + { code: 200, message: 'update Splines', model: Api::Entities::Splines }, + { code: 422, message: 'SplinesOutError' } + ] params do requires :id, type: Integer, desc: 'Spline id.' optional :spline, type: Hash do optional :x, type: Numeric optional :y, type: Numeric end optional :reticulated, type: Boolean, default: true, desc: 'True if the spline is reticulated.' end put ':id' do - error!({ code: 422, message: 'SplinesOutError' }) unless @@splines[params[:id] - 1] + error!(code: 422, message: 'SplinesOutError') unless @@splines[params[:id] - 1] update_data = params[:spline] spline = @@splines[params[:id] - 1] spline.reticulated = !!update_data[:reticulated] - spline.x = update_data[:x]/update_data[:y] || 0.0 - spline.y = update_data[:y]/update_data[:x] || 0.0 + spline.x = update_data[:x] / update_data[:y] || 0.0 + spline.y = update_data[:y] / update_data[:x] || 0.0 present spline, with: Entities::Splines end # desc 'Delete a spline.' params do requires :id, type: Integer, desc: 'Spline id.' end delete ':id' do - error!({ code: 422, message: 'SplinesOutError' }) unless @@splines[params[:id] - 1] + error!(code: 422, message: 'SplinesOutError') unless @@splines[params[:id] - 1] @@splines.delete_at(params[:id] - 1) - { "deleted": params[:id] } + { 'deleted' => params[:id] } end end end class FileAccessor < Grape::API namespace :file do desc 'Update image', - details: "# TEST api for testing uploading\n - # curl --form file=@splines.png http://localhost:9292/file/upload", - content_type: 'application/octet-stream' + details: "# TEST api for testing uploading\n + # curl --form file=@splines.png http://localhost:9292/file/upload", + content_type: 'application/octet-stream' post 'upload' do filename = params[:file][:filename] content_type 'binary', 'application/octet-stream' # env['api.format'] = :binary # there's no formatter for :binary, data will be returned "as is" header 'Content-Disposition', "attachment; filename*=UTF-8''#{URI.escape(filename)}"