Я обновляюсь с rspec 2.99 до rspec 3.0.3 и преобразовал методы экземпляра для использования allow_any_instance_of
, но не понял, как заглушить метод класса. У меня такой код:
module MyMod
class Utils
def self.find_x(myarg)
# Stuff
end
end
end
и мой тест rspec 2 делает это:
MyMod::Utils.stub(:find_x).and_return({something: 'testing'})
Как это сделать с помощью Rspec 3?
ruby-on-rails
ruby
rspec
rspec3
Петр Санкаускас
источник
источник
expect(Class.foo).to eq(bar)
я получаю «ошибку неправильного количества аргументов», потому чтоfoo
метод обычно требует 2 аргумента .... но я просто хочу, чтобы он возвращал то, что я вставил в заглушкуexpect(Class.foo).to receive(bar).with(arg1, arg2).and_return({..object})