2
rspecでテストするときに、どの引数がメソッドに渡されているかを確認することはできますか?Rspecのテスト引数?
クラスAをテストする、つまりクラスAを呼び出したい場合は、クラスBを呼び出します.Bは既にテスト済みです。私がテストしたい 唯一のことは、私はB.callingに入ってくる引数をテストするにはどうすればよいB.
class A
def method
number = 10
B.calling(number)
end
end
class B
def self.calling(argument)
# This code in this class is already testet
end
end
に入ってくる引数はありますか?
'calling'が静的メソッドでない場合はどうすれば解決できますか? – Oleander
should_receiveはオブジェクトの拡張です(私は思うので)、クラスとインスタンスはまったく同じです。これは、呼び出されたかどうかを追跡するコードでメソッドをスタブすることによって機能します。だからあなたはあなたのオブジェクトインスタンスを設定し、コールは同じ方法でそれを受け取るべきです。また、さまざまな種類のマッチャー(例えば、引数は文字列、整数、偶数など)、呼び出された時刻、同じオブジェクト上の同じメソッドへの異なる呼び出しの順序などを見ることができます。 – nruth
'' calling'をそのクラスのインスタンスに 'should_receive'を設定する必要があるインスタンスです。 [mock_model and stub_model](https://www.relishapp.com/rspec/rspec-rails/v/2-9/docs/mocks)にも興味があります。 –