0

私は、スペックをすばやく実行し続けるために、できる限りモックとスタブを使用するのが好きです。次の find_special メソッドをテストするためにこれを行う方法について、私はちょっと困惑しています。

  has_many :foos do 
    def find_special
      if proxy_owner.baz
        ... find stuff
      else
        ... find other stuff
      end
    end
  end

これに :extend => モジュール構文を使用してもかまいませんが、違いはないと思います。

4

1 に答える 1

1

でメソッドをスタブする方法を尋ねていproxy_ownerますか? この場合、それはあなたが呼び出しているオブジェクトではありませんfoosか?

# in Mocha
item.stubs(:baz).returns(true)
item.foos.find_special # => find stuff
item.stubs(:baz).returns(false)
item.foos.find_special # => find other stuff

これはテストされていませんが、おそらくそれに近づくでしょう。

于 2009-08-16T17:17:02.840 に答える