Я новичок в RSpec, и мои контроллеры используют значение атрибута улиц наследования, у меня есть такая настройка макета / заглушки, как:
describe MarketsController do
def mock_market(stubs={})
@mock_market ||= mock_model(Market, stubs).as_null_object
end
describe "GET index" do
it "assigns all markets as @markets" do
Market.stub(:all){ [mock_market] }
get :index
assigns(:markets).should eql([mock_market])
end
end
end
И эта спецификация не работает, потому что в присвоениях ничего нет (: markets).После того, как я добавил:
class MarketsController
def index
@markets = Market.all
end
end
, он пройдет, так что, я думаю, это потому, что в атрибутетекавые_ресурсы не вызывается Market.all , чтобы получить весь экземпляр Market и, таким образом, обойти заглушку для Market.stub (: все) .Метод index , который я добавил выше, явно избыточен и вообще не должен существовать, поэтому вопрос, без явного вызова Market.all, что мне делать в моей спецификации для завершения тестов?Заранее спасибо!