public async Task ConnectNode(string nodeId) { await Groups.AddToGroupAsync(Context.ConnectionId, "Nodes"); var command = new ConnectNodeCommand(nodeId, Context.ConnectionId); await Dispatch(command); }
public void NewNodeCanConnect() { var handler = new ConnectNodeCommandHandler(_nodeService, _boutRunnerService, _boutData); var command = new ConnectNodeCommand("NodeId", "ConnectionId"); var result = handler.Handle(command); var @event = result.Events.FirstOrDefault(x => x.Event.Type == "NODE_CONNECTED")?.Event as NodeConnectedEvent; Assert.NotNull(@event); Assert.Equal("NodeId", @event.Data.NodeId); }
public void NodeGetsSameNumberOnReconnect() { var handler = new ConnectNodeCommandHandler(_nodeService, _boutRunnerService, _boutData); var command = new ConnectNodeCommand("NodeId", "ConnectionId"); var result = handler.Handle(command); var @event = result.Events.FirstOrDefault(x => x.Event.Type == "NODE_CONNECTED")?.Event as NodeConnectedEvent; var result2 = handler.Handle(command); var event2 = result2.Events.FirstOrDefault(x => x.Event.Type == "NODE_CONNECTED")?.Event as NodeConnectedEvent; Assert.NotNull(@event); Assert.NotNull(event2); Assert.Equal(@event.Data.ConnectionNumber, event2.Data.ConnectionNumber); }