私の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])
ありがとう!!