Code: Select all
public interface IFoo
{
bool Foo(string a, bool b = false);
}
Code: Select all
var mock = new Mock();
mock.Setup(mock => mock.Foo(It.IsAny())).Returns(false);
Ein Ausdrucksbaum möglicherweise nicht einen Aufruf oder Aufruf enthalten, der optionale Argumente verwendet
Ich habe festgestellt, dass das oben angesprochene Problem als Erweiterung in der Liste der Probleme von Moq angesprochen wurde scheint der Version 4.5 zugeordnet zu sein (wann immer das der Fall ist).
Meine Frage ist: Was soll ich tun, da das oben genannte Problem in absehbarer Zeit nicht behoben werden kann? Habe ich nur die Möglichkeit, den Standardwert des optionalen Parameters jedes Mal explizit festzulegen, wenn ich ihn verspotte (was den Sinn der Angabe eines Parameters irgendwie zunichte macht) oder eine Überladung ohne Bool zu erstellen (wie ich es getan hätte). vor C# 4)?
Oder hat jemand eine cleverere Möglichkeit gefunden, dieses Problem zu lösen?