Microsoft.Fakesを使用して、以下に示すコードの単体テストを作成しようとしています。
Microsoft.Fakes の新機能として、抽象基本クラスの保護された関数メソッドの呼び出しをモックする際に困難に直面しています
私の基本クラス:
public abstract class MyAbstractBaseClass
{
protected virtual int MyFunctionalBaseClassMethod(int parameter1)
{
return (parameter1 * parameter1);
}
}
私の子クラス:
public class MyChildClass : MyAbstractBaseClass
{
public int GetSquare(int parameter1) //(target method for unit test)
{
return MyFunctionalBaseClassMethod(parameter1); //(target method to mock using Fakes)
}
}
モックのために次の単体テストコードを試しましたが、うまくいきませんでした:
var square = 10;
var stubMyAbstractBaseClass = new Fakes.StubMyAbstractBase()
{
MyFunctionalBaseClassMethod = (a) => { return square; }
};
注:私の抽象基本クラスの保護されたメソッドは複雑な操作を実行するため、モックする必要があります。上記のコードは単なるサンプルです。
任意のポインタをいただければ幸いです!