我的 users_controller.rb
# GET /users/1/edit
def edit
@user = current_user
#@user = User.find(params[:id])
end
我可爱的 users_controller_spec.rb (注意我所有被注释掉的尝试)
describe "Authenticated examples" do
before(:each) do
activate_authlogic
UserSession.create Factory.build(:valid_user)
end
describe "GET edit" do
it "assigns the requested user as @user" do
@user = Factory.create(:valid_user)
assigns(:user).should be(Factory.build(:valid_user))
end
end
user.rb - 工厂
Factory.define :valid_user, :class => User do |u|
u.username "Trippy"
u.password "password"
u.password_confirmation "password"
u.email "elephant@gmail.com"
u.single_access_token "k3cFzLIQnZ4MHRmJvJzg"
end
基本上我只是想让这个 RSpec 测试以最合适的方式通过。
我需要能够非常简单地说,mock_user
就是current_user
.
如果我在 users_controller.rb 中使用该测试通过@user = User.find(params[:id])
谢谢!!