2
У меня проблема с использованием rspec-mocks.undefined метод `double 'for
список расслоения показывает:
Gems included by the bundle:
* CFPropertyList (2.2.8)
* builder (3.2.2)
* bundler (1.7.12)
* ci_reporter (1.9.3)
* diff-lcs (1.2.5)
* excon (0.44.0)
* facter (2.4.0)
* hiera (1.3.4)
* json_pure (1.8.2)
* metaclass (0.0.4)
* mocha (1.1.0)
* puppet (3.7.4)
* puppet-lint (1.1.0)
* puppet-syntax (1.4.1)
* puppetlabs_spec_helper (0.8.2)
* rake (10.4.2)
* rcov (1.0.0)
* rspec (3.1.0)
* rspec-core (3.1.7)
* rspec-expectations (3.1.2)
* rspec-legacy_formatters (1.0.0)
* rspec-mocks (3.1.3)
* rspec-puppet (1.0.1)
* rspec-support (3.1.2)
Моего RSpec:
require 'spec/spec_helper'
describe 'My behaviour' do
it 'should do something' do
t = double()
end
end
По моему лучшему знанию, я сделал все правильно, но я получаю этот вид ошибок во время выполнения теста:
1) My behaviour should do something
Failure/Error: Unable to find matching line from backtrace
NoMethodError:
undefined method `double' for #<RSpec::ExampleGroups::MyBehaviour:0x10275f168>
# ./spec/puppet/util/network_device/netapp_e/my_example_spec.rb:8
И то же самое касается каждого метода от rspec-mocks, такого как: allow, get и т. Д. Кто-нибудь знает, почему это происходит?
Ну, это сработало для меня, но у меня есть дополнительный вопрос. Где это задокументировано? Я не могу найти, что конфигурация mocks требуется в документации rspec-mocks. – kendriu
Найдите здесь документацию: https://www.relishapp.com/rspec/rspec-core/v/3-1/docs/mock-framework-integration/mock-with-rspec. В документации указано, что 'rspec' является значением по умолчанию , но, похоже, это не так просто ... – spickermann