私は特定のメソッドが呼び出されたと主張したいと思いますが、メソッドをモック/スタブしたくありません - そのコードをテストにも含めたいと思います。スタブのないメソッド呼び出しをアサートしますか?
例えば、Rubyで、のようなもの:
def bar()
#stuff I want to test
end
def foo()
if condition
bar()
end
#more stuff I want to test
end
# The test:
foo()
assert_called :bar
誰でも提案(またはそれについて移動する良い方法を)持っていますか?実際のコードはかなり複雑ですので、例の単純さを考慮しないでください。
ダニエル、私は実証しているアイデアを現実にするためにRubyメタプログラミングに精通していますか? –
私はそれの要点を取得する - それは私がおそらく私が実際にテストメソッドのために、より明示的にそれを行うだろう :-)確かにRubyのアプローチです: 古い=メソッド(:FOO) define_method(:FOO) を行います... end ありがとうございます! –
それを聞いてうれしがってうれしかった!敬具 –