Приложение My Rails 3 имеет ресурс продукта.«Mock # to_hash должен возвращать хэш»
В моих спецификациях ProductsController сгенерированные тесты проверяют, что я перенаправляю URL-адрес продукта, обновляя его.
следующие ошибки кода:
#inside ProductsController spec
def mock_product(stubs={})
(@mock_product ||= mock_model(Product).as_null_object).tap do |product|
product.stub(stubs) unless stubs.empty?
end
end
it "should do something" do
product_url(mock_product)
end
Ошибка является:
TypeError: RSpec::Mocks::Mock#to_hash should return Hash
'mock_model' устанавливает атрибут' id' экземпляра модели (обычно начиная с «1001»), которого должно быть достаточно, чтобы вспомогательные функции генерировали путь/url. Похоже, ваша спецификация контроллера такая же, как и RSpec, которая должна работать без повышения типа TypeError. Таким образом, ваша ситуация выглядит необычно - что-нибудь еще, что вы можете сказать об этом? – zetetic
Я не уверен, почему это происходит. Но спасибо за проверку здравомыслия. – mkirk
У меня такая же проблема и не нашел никакого решения = ( –