コード例 #1
0
        public async Task BroadcastToSelf()
        {
            var mockReceiver = new StreamingHubBroadcastTestHubReceiverMock();
            var hub          = server.CreateStreamingHubClient <IStreamingHubBroadcastTestHub, IStreamingHubBroadcastTestHubReceiver>(mockReceiver);
            await hub.RegisterConnectionToGroup();

            var mockReceiverOther = new StreamingHubBroadcastTestHubReceiverMock();
            var hubOther          = server.CreateStreamingHubClient <IStreamingHubBroadcastTestHub, IStreamingHubBroadcastTestHubReceiver>(mockReceiverOther);
            await hubOther.RegisterConnectionToGroup();

            Assert.False(mockReceiver.HasCalled);
            Assert.False(mockReceiverOther.HasCalled);

            await hub.CallBroadcastToSelfAsync();

            await Task.Delay(10); // NOTE: The receivers may not receive broadcast yet at this point.

            // Target: Self
            Assert.True(mockReceiver.HasCalled);
            Assert.False(mockReceiverOther.HasCalled);
        }