如何在 SignalR 2.x 单元测试框架中向模拟客户端添加组支持?

2023-11-26

我正在使用 Moq 为我的 SignalR 2.x 应用程序构建一个 UnitTest 框架。 我目前正在通过以下方式嘲笑我的客户:

var mockClients = new Mock<IHubCallerConnectionContext>();
Clients = mockClients.Object;

为了测试,我需要测试按组发送消息:

Clients.Group(groupName).sendSomeMessage(message);

如何向我的模拟客户端添加组支持?


检查一下:https://github.com/SignalR/SignalR/blob/release/tests/Microsoft.AspNet.SignalR.Tests/Server/Hubs/HubFacts.cs

 public void HubsGroupAreMockable()
        {
            var hub = new MyTestableHub();
            var mockClients = new Mock<IHubCallerConnectionContext<dynamic>>();
            var groups = new Mock<IClientContract>();

            hub.Clients = mockClients.Object;
            groups.Setup(m => m.send(It.IsAny<string>())).Verifiable();
            mockClients.Setup(m => m.Group("test")).Returns(groups.Object);
            hub.SendGroup("test", "foo");

            groups.VerifyAll();
        }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 SignalR 2.x 单元测试框架中向模拟客户端添加组支持? 的相关文章

随机推荐