1

私はrspecにかなり慣れていません。次のコードの機能テストを作成するにはどうすればよいですか。

class FooController < ApplicationController
   def new
     @title = "Log in to Mint"
     @msg = session[:msg]
     session[:msg] = nil
   end
end

 

4

1 に答える 1

2

このようなものはどうですか:

describe FooController do

  describe "GET new" do
    it "assigns 'Log in to Mint' to @title" do
      get :new
      assigns(:title).should == "Log in to Mint"
    end

    it "assigns message session to @msg" do
      session[:msg] = "a message"
      get :new
      assigns(:msg).should == "a message"
    end

    it "sets message session to nil" do
      get :new
      session[:msg].should be_nil
    end
  end

end

参照: Rspec: インスタンス変数の代入のテスト

于 2013-01-08T05:38:15.933 に答える