1
私はgroovy map強制を使用してMapをモックしようとしています。 私はさまざまなバリエーションのコードを試しましたが、結果は常にnullでした。map強制を使ってGroovyでjava.util.Mapをモックする方法は?
Map<String, String> map = [get: {String k -> "echo"}] as Map<String, String>
println map.get("a")
map = {"echo"} as Map<String, String>
を使用している場合は動作します。
最初のバージョンを作成する方法に関するアイデアはありますか?
おかげ
わかりましたので、作品上記のコードではなく:あなたはそれはあなたのインターフェイスタイプに強制よ、
Expando
のように、あなたのモックオブジェクトMap
とは異なる種類を作ることができます。この問題を回避するには私はそれがすべきだと思った元の理由から。 'Map'という' Map'は私が述べた理由では機能しませんが、上記のコードがどのような仕組みで動作するかを理解する必要があります。 –
この作業を行うための関連するソースパスは見つかりませんでしたが、参考になる可能性のあるエキスパンドを使用するための記事があります:http://docs.codehaus.org/display/GROOVY/Developer+Testing+using+Maps +と+ Expand + + Mocksの代わりに+ Expandos + –