2013-07-04 48 views
0

我知道我可以使用assigns來查看實例變量是否分配給了某些東西,但是如何測試另一個屬性是否已設置?如何測試控制器中的新記錄是否具有屬性

class UsersController < ApplicationController 
    def new 
    @user = User.new 
    @user.name = "Tom Lehrer" 
    end 
end 

describe UsersController do 
    it "assigns a user" do 
    get :new 
    expect(assigns(:user)).to be_a_new(User) 
    end 

    it "sets the new users name" do 
    # ?? 
    end 
end 

回答

2

您可以測試對assigns(:user)

expect(assigns(:user).name).to eq("Expected Name") 
0

不明顯?

User.any_instance.should_receive(:name).with("Tom Lehrer") 
get :new 
2

受讓人(:用戶).name.should == '這裏名稱'

相關問題