Я пытаюсь настроить ожидаемый вызов защищенного метода. Подпись методов выглядит следующим образом:
protected SqlDataReader MethodName(string Name, List<SqlParameter> paramList, SqlConnection con)
Я дошел до того, что настроил ожидание следующим образом, но я получаю ошибку при запуске теста:
mock.Protected()
.Setup<SqlDataReader>( "MethodName", "SomeString", ItExpr.IsAny<List<SqlParameter>>(), ItExpr.IsNull<SqlConnection>() )
.Returns( dataReader );
Я получаю ошибку:
Test method GlobalTests.DBAdapterSystemDataTest.GetDentalWingsProstheticTypeMappings threw exception:
System.NotSupportedException: Invalid setup on a non-virtual (overridable in VB) member: mock => mock.ExecuteReaderStoredProcedure("GetDentalWingsProstheticTypeMappings", It.IsAny<List`1>(), It.Is<SqlConnection>(v => Object.Equals((Object)v, (Object)null)))
У кого-нибудь есть идеи, как настроить ожидание, чтобы оно работало? Меня не интересуют значения аргументов, я просто хочу убедиться, что метод был вызван хотя бы один раз.