У меня есть приложение Rails, которое обслуживает JSON, и вы хотите протестировать некоторый код, который запрашивает и обрабатывает некоторые json через http. Каков наилучший способ проверить этот код без прерывания HTTP-запроса-ответа?тестирование Rails json API
Я думаю об увольнении webrick для обслуживания приложения Rails, но технически неумелого, чтобы это сделать. Приветствуется любой указатель на пример кода.
# lib/bam.rb
require 'open-uri'
class Bam
def bam host='localhost'
hash = JSON.parse(open("http://#{host}/bam.json))
# process hash
end
end
# spec/bam_spec.rb
RSpec.describe 'Bam' do
before(:all) do
# fire up webrick
end
after(:all) do
# shutdown webrick
end
it 'bam' do
hash = Bam.new.bam
hash.should eq('bam' => 'bam')
end
end
Я предлагаю сначала прочитать [Руководство по Rails о тестировании] (http://guides.rubyonrails.org/testing.html). – spickermann