Как проверить создание приложения Rack с помощью огурца?

Я создаю приложение командной строки Ruby, которое будет генерировать приложение Rack. Я хочу проверить, что созданное приложение Rack является действительным приложением Rack. Я начал использовать Aruba и Cucumber для проверки того, что CLI создает правильные файлы и структуру каталогов, но теперь я готов к запуску rackup и убедитесь, что приложение работает правильно. Как я могу заставить Cucumber и Capybara взаимодействовать с этим вновь созданным приложением?

1 ответ

Создайте корневую страницу для своего стоечного приложения, затем попросите капибару посетить любой путь, который вы считаете своим корневым путем, и проверьте какой-либо вывод на этой странице.

def response
   if request.path "/" 
      Rack::Response.new(render("index.html.erb"))  
   else 
      Rack::Response.new("Not Found", 404)
    end
end

при запуске стойки: @startup_output = "foo"генерировать какой-то вывод на вашей корневой странице <%= @startup_output %>

водосвинка:

visit('/')
page.should have_content('foo')

Если вам нужно, чтобы капибара запустила приложение, попробуйте использовать задачу rake внутри теста:

system "rake rack:start"
Другие вопросы по тегам