Тест контроллера RSpec: как проверить, что вызывается @ organization.destroy? - PullRequest
0 голосов
/ 03 июля 2011

Я подумал, что это может быть как:

let(:organization) { mock_model(Organization).as_null_object }

before(:each) do
  Organization.stub(:find).and_return(organization)
end

it "calls the destroy action on @organization" do
  assigns[:organization].should_receive("destroy")
  post :destroy, :id => organization.id
end

.. но я получаю ошибку «невозможно изменить замороженный объект».

1 Ответ

0 голосов
/ 03 июля 2011

Вот как я бы написал эту спецификацию:

describe 'Oragnization#destroy' do
  let(:organization) { mock_model(Organization, :id => 1, :destroy => true) }

  subject { post :destroy, :id => organization.id }

  it { should be_successful }
end
...