0

symbol_priceキーをシンボルとして、価格を値として持つハッシュであるメソッドがあります。

def get_price_for_symbol(symbol_price, symbol)
  symbol_price[symbol]
end

Groovy でメイン クラス メソッドをモック アウトする場合はget_price_for_symbol、テスト クラスに次のように記述します。

object.metaClass.get_price_for_symbol = { symbol_price, symbol -> 99.987 }

Ruby で同様のことを行うにはどうすればよいでしょうか。

4

1 に答える 1

0

Ruby で最も同等なことは、テストでメソッドを再定義することですが、この種のことを避けるために依存性注入の使用を検討する必要があります。とにかく、ここに行きます:

instance = Object.new

def instance.get_price_for_symbol(_, _) 
  99.987
end
于 2015-02-27T01:08:06.107 に答える