rspec and_return несколько значений - PullRequest
4 голосов
/ 08 ноября 2011

Я пытаюсь заглушить метод, который возвращает несколько значений.Например:

class Foo
  def foo(a,b)
    return a + 1, b + 2
  end
end

Я хочу поставить заглушку, но у меня проблемы с and_return с двумя возвращаемыми значениями

f = Foo.new
f.stub!(:foo).and_return(3,56)

не работаетОн в основном возвращает 3 при первом вызове и 56 во второй раз.Кто-нибудь знает, какой будет синтаксис, чтобы он возвращал 3,56 при первом вызове?Это возможно даже с rspec?

заранее спасибо ... jd

1 Ответ

15 голосов
/ 08 ноября 2011

Возвращает несколько значений:

> def f; return 1, 2; end
> f.class
 => Array 

Итак, верните массив:

f.stub!(:foo).and_return([3, 56])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...