我无法为子域名提供RSpec路径。
测试路径应为api.example.com/public/v1/regions/origin?title=indm
但我不知道如何为RSpec提供这样的途径。如何将子域api
路径到此相对路径?
let(:api_path) { 'public/v1/regions/origin?title=indm' }
登录
1) Regions Public API GET /v1/regions/origin?title=? returns 200 status code
Failure/Error: get api_path
ActionController::RoutingError:
No route matches [GET] "/public/v1/regions/origin"
# ./spec/api/public/v1/regions_spec.rb:14:in `block (3 levels) in <top (required)>'
的routes.rb
namespace :api, path: '', constraints: {subdomain: 'api'} do
namespace :public, defaults: { format: :json } do
namespace :v1 do
resources :regions do
get :origin, on: :collection
get :destination, on: :collection
end
end
end
end
答案 0 :(得分:0)
我不知道解决此问题的真正好方法,但我使用带有Anvil的pow
服务器来做到这一点。
我安装了Anvil并使用域orca.dev
运行服务器。在此之后,我重新配置了我的RSpec测试路线。
<强> spec_helper.rb 强>
def get_api_path path, *args
get "http://api.orca.dev#{path}", *args
end
<强> regions_spec.rb 强>
before do
get_api_path '/public/v1/regions/origin?title=indm'
end
现在测试正在进行中!