0

これは私のコントローラーです

def log_in
    admin=Admin.find_by_name(params[:name])
    unless admin.nil?
        admin=admin.authenticate(params[:password])
        if admin==false
            # wrong password,login again
            # redirect_to sign_in_admins_url
        else
            session[:admin]=admin.name
            redirect_to root_path
        end
    end
end

そして、これはrspecコードです:

describe "Post request for admins" do
    it "should log_in with right name and password" do
        post :log_in,name:"ryan",password:"123456"
        controller.params[:name].should=="ryan"
        controller.params[:password].should=="123456"
        session[:admin].should eq "ryan"
    end
end

そして、私は常にアサーションを返しました

expected 'ryan',got nil

なぜこれが起こったのですか?私はまだrspecの初心者です...チュートリアルに従ってください、それがうまくいくと思います

4

0 に答える 0