0

私の単体テストのいくつかでは、Moq を使用してパラメーターとして渡された文字列を返そうとしています。

「home.aspx」などの指定された文字列を返すように要求すると、機能します。

var navMock = new Mock<INavigationService>();
navMock
    .Setup(x => x.GetUrlForSystem(It.IsAny<NavigationService.System>(), It.IsAny<string>()))
    .Returns("home.aspx");

ただし、パラメーターを返すように要求すると、

System.Reflection.TargetParameterCountException : パラメーター数が一致しません。

var navMock = new Mock<INavigationService>();
navMock
    .Setup(x => x.GetUrlForSystem(It.IsAny<NavigationService.System>(), It.IsAny<string>()))
    .Returns((string s) => s);
4

1 に答える 1

3
    var navMock = new Mock<INavigationService>();  
     navMock  
    .Setup(x => x.GetUrlForSystem(It.IsAny<NavigationService.System>(), It.IsAny<string>()))  
    .Returns((NavigationService.System n, string s) => s); 
于 2012-07-03T23:38:22.270 に答える