2012-04-07 3 views
0

特定のインターフェイスタイプの配列をとるソートクラスをテストする必要があります。このインタフェースには、オブジェクトを比較してint値を返す関数だけがあります。私はeasymockを使ってjUnitでテストしようとしています。私は2つの問題で立ち往生しています。 まず、指定したインタフェース用に作成した各モックオブジェクトに値を割り当てる必要があります。EasyMockでvoidメソッドをテストする

mock[0] = EasyMock.createMock(CompareValue.class); 

モック[0]に値を割り当てるにはどうすればよいですか?唯一の方法は、以下のいるインタフェースCompareValue:

int compareVal(Object obj); 

オブジェクトが

第二ソートクラスのCompareValueタイプになるだろうが、私は唯一のリストを取り、それを修正クラスの静的な無効方法を持っていますしかし何も返さない。私は、インターフェイスまたはclass.Iのコードを変更すると仮定していない場合は、正しくソートされているかどうかを確認するために、その変更されたリストを取得する方法はわかりません。

答えて

1

モックに値を割り当てる代わりにゲッターをオーバーライドします。

expect(mock[0].getValue()).andRetun(yourValue); 
+0

インターフェイスにgetValue()メソッドがありません。 mockオブジェクトに直接値を割り当てる方法はありますか? – Ramy

+0

私は唯一の可能な方法は、内部クラスを実装することだと思う – Ramy

+0

あなたはCompareValueクラスのいくつかの詳細を提供していただけますか? –

関連する問題