2011-07-10 9 views
2

私はユニットテストのためのtypemockを使用して奇妙な行動を発見した - デバッグモードP1でTypeMock奇妙な行動

internal class MyClass 
{ 
    public static int foo(int param) 
    { 
     return param; 
    } 
} 
[TestClass] 
public class UnitTest1 
{ 
    [TestMethod, Isolated] 
    public void TestMethod1() 
    { 
     Isolate.WhenCalled(()=>MyClass.foo(1)).WillReturn(-1); 
     Isolate.WhenCalled(() => MyClass.foo(2)).WillReturn(-2); 
     var p1 = MyClass.foo(1); //p1 = -1 
     var p2 = MyClass.foo(1); //p2 = -2 (!!!) 
    } 
} 

-1とp2は-2 typemockまたは私のバグは何かが欠けてるということですか?デフォルトで

おかげで、

Kfir

答えて

2

アイソレーターはWhenCalledで関数に渡される引数を無視します。あなたの場合は、期待値としてWithExactArgumentsを使用してください:

+0

ありがとう、問題が解決しました。 –

+0

喜んで助けてください。ご不明な点がございましたら、[email protected]までお気軽にお問い合わせください! –