有以下代码:
describe 'Some title' do
before do
session = ActionController::TestSession.new
session[:state] = "12334"
get '/api/v1/menus', format: :json
end
it 'some text' do
expect(response).to be_success
json = JSON.parse(response.body)
puts json
end
end
控制器代码:
class Api::V1::MenusController < Api::V1::ApiV1Controller
def index
render json: session
end
end
但是控制器总是返回一个空的会话。我该如何解决?
答案 0 :(得分:0)
尝试添加此内容:
describe 'Some title', :type => :controller do
并删除session = ActionController::TestSession.new
。
RSpec需要知道你在测试中正在做“控制器事”。您可以按照上面的说明或将测试放在 spec / controllers 中。