public static void Mock(out IProgram prog, out IJson json)
{
prog = Substitute.For<IProgram>();
IJson = Substitute.For<IJson>();
prog.SaveProg(1, 1, 1, "Somthing", 1, DateTime.UtcNow,
(DateTime.UtcNow + TimeSpan.FromDays(10)),
10, "someemail@email.com", DateTime.UtcNow, 1)
.Returns(ObjectResult<int?>);
}
当调用Returns(ObjectResult<int?>)
时,我遇到了一个错误,因为ObjectResult
是受保护的类。我该如何解决这个问题,以便能够从实际方法中调用我的模拟方法?
.Returns
期望一个实例,而不是一个类型。你目前正在模拟接口,这些接口不能有受保护的方法。ObjectResult<T>
不是受保护的类(一个类需要嵌套才能受保护)。ObjectResult<T>有不同的版本,其中一些是密封的,一些有受保护的构造函数。你想使用哪个版本? - forsvarir