我将我的应用程序加载到IRB控制台,方法是将 irb 键入bash,然后在控制台中使用:
require 'myapp.rb'
这一切都成功了,现在我想打电话给我的一条路线。
get '/stuff' do
'<HTML><BODY><CENTER>App is up and running! '\
'Less logging...</CENTER></BODY></HTML>'
end
如何使用IRB控制台测试此路线?
答案 0 :(得分:0)
您在寻找测试吗?如果是这样,你应该尝试一个测试框架。
但是有可能在irb中这样做: Link
转到&#34;使用Rack :: Test而不使用Mixin&#34;
> require_relative 'myapp'
> require 'rack/test'
> browser = Rack::Test::Session.new(Rack::MockSession.new(Sinatra::Application))
> browser.get '/stuff'
> browser.last_response.body
答案 1 :(得分:0)
我发现了Tux宝石。它允许从IRB控制台内调用get和post路由。
答案 2 :(得分:0)
试试这个:
class MySinatraApp < Sinatra::Base
get "/test_endpoint/"
"Hello world"
end
# ...
end
require "rack/test"
def app
MySinatraApp
end
Rack::Test::Methods.get("/test_endpoint/")