В приведенном ниже коде у меня есть класс Программа , в которой есть test () метод, который я хочу проверить.
Он вызывает класс "Iprint " метод " printnu () ", который снова вызывает класс " Inumber " метод " returnn () ", как показано ниже:
public class number : Inumber
{
public int returnn()
{
return 10;
}
}
public class print : Iprint
{
public int printnu()
{
Inumber test = new number();
return (test.returnn());
}
}
public class program
{
public int test()
{
Iprint hello = new print();
return (hello.printnu());
}
}
Как я могу издеваться "returnn ()" метод класса число ?Является ли это возможным?Если нет каких-либо советов о том, как решить эту проблему!
Я попробовал
Mock<Inumber> mock = new Mock<Inumber>();
mock.Setup<int>(x => x.returnn()).Returns(15);
Iprint test = new print();
var a = test.printnu();
Assert.AreEqual(a, 15);
, пересмешка не работает и выполняет свой собственный блок и возвращает 10!Я попытался установить Returnn () метод на виртуальный и высмеивать его, но он не работал.