为什么有些事件没有;当用Moq嘲笑WCF时,我不会被激怒

本文关键字:激怒 WCF 嘲笑 事件 Moq 当用 为什么 | 更新日期: 2023-09-27 18:21:07

我有一个代码如下:

mockSecurityService
    .Setup(s => s.CreateUserWithRolesAsync(
        It.IsAny<MembershipRoles>(),
        It.IsAny<string>(),
        It.IsAny<MembershipCreateStatus>()))
    .Raises(p => p.CreateUserWithRolesCompleted += null,
        new CreateUserWithRolesCompletedEventArgs(new object[] { mr },
            null, false, null)
    );

但是当调用CreateUserWithRolesAsync()时,Moq中的事件不会被引发。知道为什么吗?我查阅了很多文档,应该提出它,因为签名匹配(It.IsAny<T>正确匹配所有类型)。

为什么有些事件没有;当用Moq嘲笑WCF时,我不会被激怒

在我看来,您必须对方法CreateUserWithRolesAsync进行不同的签名。因此,调用CreateUserWithRolesAsync()将不匹配具有三个参数的调用的设置。

为了进一步帮助您,您需要发布CreateUserWithRolesAsync的所有不同签名和不起作用的测试。