とSetupGet以下のコードを参照してください:複数のコールバック
mockBusinessLayer.Setup(m => m.Calculate(It.IsAny<integer>(), It.IsAny<integer>())).Callback
(() => mockBusinessLayer.SetupGet(y => y.FirstNumber).Returns(Helper.FirstNumber));
mockBusinessLayer.Setup(m => m.Calculate(It.IsAny<integer>(), It.IsAny<integer>())).Callback
(() => mockBusinessLayer.SetupGet(y => y.SecondNumber).Returns(Helper.SecondNumber));
計算は、()2つの整数を受け取り、それらを一緒に追加されます。同じモックオブジェクトに複数のSetupGetを設定するにはどうすればよいですか?上記のコードは、SecondNumberでGetコールバックを設定するだけです(SetupGetが最後に呼び出されたためです)。
更新
これは、私がテストしようとしている機能である:
public CalculatorDTO Calculate(int NumberOne, int NumberTwo)
{
_Calculator.Calculate(NumberOne, NumberTwo);
return Mapper.Map<CalculatorDTO>(_changeCalculator);
}
}
は、それがこれを行うには、より良いです:
mockBusinessLayer.Setup(X => x.FirstNumber)戻り値(Helper.FirstNumber); mockBusinessLayer.Setup(x => x.SecondNumber)。返されます(Helper.SecondNumber);
これは仕様です。 Moqは、メンバーの最後の設定のみを認識します。あなたは何を試そうとしていますか? – Nkosi
@ Nkosi、複数のセットアップが可能ですか:SetupGet() – w0051977
テストしようとしていることを示して、私たちが問題を解決するのに役立つかどうかを見てみましょう。 – Nkosi