тестирование ведения журнала в функции волшебства с использованием rspec в rails 3.1

я добавил include Sorcery::TestHelpers::Rails внутри sorcery.rb, моя спецификация контроллера выглядит так

describe "success" do
  before(:each) do
    @user = Factory(:user)
    @attr = { :username => @user.username, :password => @user.password }
  end
  it "should sign the user in" do
    post :create, :session => @attr
    # controller.current_user.should == @user
    controller.should be_logged_in
  end
end

мой контроллер выглядит так

class SessionsController < ApplicationController
  def create
    user = login(params[:username], params[:password], params[:remember_me])
    if user
      redirect_back_or_to root_url, :notice => "Logged in!"
    else
      flash.now.alert = "Email or password was invalid"
      render :new
    end
  end
end

у меня есть модель пользователя, перенесенная в мою тестовую среду, когда я запускаю тест, он всегда заканчивается тем, что не вошел в систему.


person bicepjai    schedule 16.01.2012    source источник
comment
похоже, что колдовские методы не вызываются внутри rspec. Любые идеи оценены?   -  person bicepjai    schedule 17.01.2012


Ответы (1)


Вы передаете params[:session] в метод из своего теста, но в действии вы ссылаетесь на params[:username] и params[:password].

person sevenseacat    schedule 17.01.2012