Пожалуйста, простите Rails, вопрос о RSpec newbie здесь.Rails RSpec Sucker Punch
Я пытаюсь использовать RSpec для тестирования методов внутри класса, который я создал в файле app/workers/myworker.rb
. Что-то вроде этого:
class MyWorker
include SuckerPunch::Worker
def perform(user_id)
do_stuff(user_id)
#etc
end
def do_stuff(user_id)
# do stuff
end
end
У меня есть спецификации файла spec/workers/myworker_spec.rb
, что-то вроде этого:
require 'spec_helper'
describe MyWorker do
describe "do_stuff method" do
test = do_stuff(3)
end
end
Я получаю undefined method 'do_stuff' for #<RSpec::Core::ExampleGroup::Nested_1::Nested_2:0x007fef211b7840>
Любые советы о том, как включить этот MyWorker
класс и его методы так что я могу проверить их с RSpec?
Спасибо.
получается, что это не проблема. я думаю, что 'описать MyWorker do' делает класс' MyWorker' доступным? в любом случае проблема заключалась в том, что я не создавал экземпляр класса, например, «worker = MyWorker.new», а затем «worker.do_stuff (3)». – seanomlor
@seanomlor Это делает его доступным, если он уже определен, для чего нужен 'require'. Вполне возможно, что rails-rspec уже загрузил его для вас. Рад, что вы его исправили, хотя я обновил ответ с некоторыми полезными мыслями. – iain
спасибо. Я думаю, что ваше обновление делает это достойным быть принятым ответом. :) – seanomlor