1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
|
# frozen_string_literal: true
require 'spec_helper'
describe Grape::API::Instance do
describe 'boolean constant' do
module DefinesBooleanInstanceSpec
class API < Grape::API
params do
requires :message, type: Boolean
end
post :echo do
{ class: params[:message].class.name, value: params[:message] }
end
end
end
def app
DefinesBooleanInstanceSpec::API
end
let(:expected_body) do
{ class: 'TrueClass', value: true }.to_s
end
it 'sets Boolean as a type' do
post '/echo?message=true'
expect(last_response.status).to eq(201)
expect(last_response.body).to eq expected_body
end
context 'Params endpoint type' do
subject { DefinesBooleanInstanceSpec::API.new.router.map['POST'].first.options[:params]['message'][:type] }
it 'params type is a boolean' do
expect(subject).to eq 'Grape::API::Boolean'
end
end
end
end
|