Я пытаюсь проверить, что новое действие в моем УСПОКОИТЕЛЬНОМ контроллере настроило переменную экземпляра типа требуемого объекта. Кажется довольно типичным, но имеющий проблему, выполняющую его
Клиентский контроллер
def new
@client = Client.new
end
Тест
describe "GET 'new'" do
it "should be successful" do
get 'new'
response.should be_success
end
it "should create a new client" do
get 'new'
assigns(:client).should == Client.new
end
end
Результаты в...
'ClientsController GET 'new' should create a new client' FAILED expected: #, got: # (using ==)
Который является, вероятно, потому что это пытается сравнить 2 экземпляра активной записи, которые отличаются. Так, как я проверяю, что контроллер настроил переменную экземпляра, которая содержит новый экземпляр модели Client.
Технологии в #rspec помогли мне ...
assigns(:client).should be_kind_of(Client)