,所以我一直試圖做一個基本的響應測試 - 用200和403。我不知道我需要添加任何東西..錯誤響應狀態+設計+ factory_girl
accounts_spec。 RB
RSpec.describe Api::V1::AccountsController, :type => :controller do
describe "GET index no account" do
it "has a 403 status code" do
get :index
expect(response.status).to eq(403)
end
end
describe "GET index with account" do
login_user
it "has a 200 status code" do
get :index
expect(response.status).to eq(200)
end
end
end
賬戶控制器#INDEX
def index
#show user details
raise if not current_user
render json: { :user => current_user.as_json(:except=>[:created_at, :updated_at, :authorization_token, :provider, :uid, :id])}
rescue
render nothing: true, status: 403
end
我不斷收到
1)Api::V1::AccountsController GET index with account has a 200 status code
expected: 200
got: 403
有關我在哪裏做錯的任何想法嗎?
UPDATE
module ControllerMacros
def login_user
before(:each) do
@request.env["devise.mapping"] = Devise.mappings[:user]
user = FactoryGirl.create(:user)
sign_in :user, user
end
end
end
嘗試用開始塊包裝提高。所以開始......舉起......渲染json:{:user ... rescue render nothing:true,status:403 end –
這個包裝也不起作用... –