В моем приложении Rails / Grape я создал контроллер веб-перехватчика, который получает JSON от веб-перехватчика CMS. Мне просто интересно, как протестировать его в RSpe c, если у меня нет никаких параметров (я думаю, мне это не нужно, потому что я получаю JSON только от веб-перехватчика).
Мой веб-перехватчик контроллер (работает хорошо):
module Cms
class Webhook < Base
desc 'Take the CMS webhook'
http_basic do |user, password|
user == ENV['USER'] && password == ENV['PASSWORD']
end
post :receive do
params
end
end
end
Пробовал нравиться:
describe Cms::Webhooks, type: :request do
subject(:call) { post endpoint, params: params, as: :json }
let(:endpoint) { '/api/cms/webhooks/receive' }
let(:params) do
{
some: 'some pass'
}
end
it 'returns a successful response' do
call
expect(response).to be_successful
end
end
Получаю ошибку:
Failure/Error: expect(response).to be_successful
expected `#<ActionDispatch::TestResponse:0x00007f9058e43e60 @mon_data=#<Monitor:0x00007f9058e43de8>, @mon_data_..., @method=nil, @request_method=nil, @remote_ip=nil, @original_fullpath=nil, @fullpath=nil, @ip=nil>>.successful?` to return true, got false