我在使用Moq的测试中有一些代码:publicclassInvoice{...publicboolIsInFinancialYear(FinancialYearLookupfinancialYearLookup){returnInvoiceDate>=financialYearLookup.StartDate&&InvoiceDate所以在单元测试中我试图模拟这个方法并让它返回truemockInvoice.Setup(x=>x.IsInFinancialYear()).Returns(true);有没有办法写这一行,这样我就不必指定IsInFinancialYear的输入。IE。所以
我在使用Moq的测试中有一些代码:publicclassInvoice{...publicboolIsInFinancialYear(FinancialYearLookupfinancialYearLookup){returnInvoiceDate>=financialYearLookup.StartDate&&InvoiceDate所以在单元测试中我试图模拟这个方法并让它返回truemockInvoice.Setup(x=>x.IsInFinancialYear()).Returns(true);有没有办法写这一行,这样我就不必指定IsInFinancialYear的输入。IE。所以
publicvoidSubmitMessagesToQueue_OneMessage_SubmitSuccessfully(){varmessageServiceClientMock=newMock();varqueueableMessage=CreateSingleQueueableMessage();varmessage=queueableMessage[0];varxml=QueueableMessageAsXml(queueableMessage);messageServiceClientMock.Setup(proxy=>proxy.SubmitMessage(xml)).V
publicvoidSubmitMessagesToQueue_OneMessage_SubmitSuccessfully(){varmessageServiceClientMock=newMock();varqueueableMessage=CreateSingleQueueableMessage();varmessage=queueableMessage[0];varxml=QueueableMessageAsXml(queueableMessage);messageServiceClientMock.Setup(proxy=>proxy.SubmitMessage(xml)).V
想象一下这个类publicclassFoo{privateHandler_h;publicFoo(Handlerh){_h=h;}publicvoidBar(inti){_h.AsyncHandle(CalcOn(i));}privateSomeResponseCalcOn(inti){...;}}在Foo测试中Mo(q)ckingHandler,我如何才能检查Bar()传递给_h.AsyncHandle的内容? 最佳答案 您可以使用Mock.Callback方法:varmock=newMock();SomeResponseresu
想象一下这个类publicclassFoo{privateHandler_h;publicFoo(Handlerh){_h=h;}publicvoidBar(inti){_h.AsyncHandle(CalcOn(i));}privateSomeResponseCalcOn(inti){...;}}在Foo测试中Mo(q)ckingHandler,我如何才能检查Bar()传递给_h.AsyncHandle的内容? 最佳答案 您可以使用Mock.Callback方法:varmock=newMock();SomeResponseresu
我有一个预先存在的界面...publicinterfaceISomeInterface{voidSomeMethod();}我已经使用mixin扩展了这个接口(interface)......publicstaticclassSomeInterfaceExtensions{publicstaticvoidAnotherMethod(thisISomeInterfacesomeInterface){//Implementationhere}}我有一个类调用这个我想测试...publicclassCaller{privatereadonlyISomeInterfacesomeInterfa
我有一个预先存在的界面...publicinterfaceISomeInterface{voidSomeMethod();}我已经使用mixin扩展了这个接口(interface)......publicstaticclassSomeInterfaceExtensions{publicstaticvoidAnotherMethod(thisISomeInterfacesomeInterface){//Implementationhere}}我有一个类调用这个我想测试...publicclassCaller{privatereadonlyISomeInterfacesomeInterfa
据我了解,如果我调用更高级别的方法,我可以测试是否会发生方法调用,即:publicabstractclassSomeClass(){publicvoidSomeMehod(){SomeOtherMethod();}internalabstractvoidSomeOtherMethod();}我想测试一下,如果我调用SomeMethod(),那么我希望SomeOtherMethod()会被调用。我是否认为这种测试可以在模拟框架中使用? 最佳答案 您可以使用Verify来查看您模拟的对象中的方法是否已被调用,例如:staticvoidM
据我了解,如果我调用更高级别的方法,我可以测试是否会发生方法调用,即:publicabstractclassSomeClass(){publicvoidSomeMehod(){SomeOtherMethod();}internalabstractvoidSomeOtherMethod();}我想测试一下,如果我调用SomeMethod(),那么我希望SomeOtherMethod()会被调用。我是否认为这种测试可以在模拟框架中使用? 最佳答案 您可以使用Verify来查看您模拟的对象中的方法是否已被调用,例如:staticvoidM