繁体   English   中英

为什么NUnit + Moq测试失败?

[英]Why does this NUnit+Moq test fail?

希望您知道,因为我看不到。 奖励积分给那些弄清楚如何才能达到此测试试图达到的目标的人。

using NUnit.Framework;
using Moq;

[TestFixture]
public class MoqHuh
{
    public class A {}
    public class B : A {}

    public interface IHelper
    {
        void DoIt(A a);
    }

    [Test]
    public void Huh()
    {
        var mock = new Mock<IHelper>();
        mock.Expect(helper => helper.DoIt(It.IsAny<B>())).Verifiable();

        mock.Object.DoIt(new B());

        mock.VerifyAll();
    }
}

原来这是飞行员的错误。 我错误地认为Moq在Mono上工作正常。 (看起来确实很好)。 仅当使用mono的gmcs进行编译时才会发生此问题,而使用Microsoft的csc进行编译时不会发生。

我已经报告了Mono团队的适当错误,并将继续确保使用Mono的gmcs.exe编译时完整的Moq测试套件能够通过

对不起,噪音。

卢卡斯

此测试工作正常。

由于没有正在测试的系统,因此您正在测试moq是否按预期工作。

抱歉,不清楚。 我正在测试的确实是该Mock的行为符合我的预期。 对我来说,以上测试失败。 听到它为您而过,我感到非常惊讶。 我正在Visual Studio 2008中运行测试。我刚升级到Moq 2.6,但测试仍然失败。 该测试通过的Moq是什么版本?

从主干(3.0 beta)的最新版本无法复制

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM