Exemplo n.º 1
0
            // When the closing state is initialised a Close message is sent
            public async Task WhenTransportIsNotConnected_ShouldSendCloseMessage()
            {
                var client = await GetConnectedClient();

                // Act
                client.ExecuteCommand(SetClosingStateCommand.Create());

                await client.ProcessCommands();

                // Assert
                LastCreatedTransport.LastMessageSend.Should().NotBeNull();
                LastCreatedTransport.LastMessageSend.Action.Should().Be(ProtocolMessage.MessageAction.Close);
            }
Exemplo n.º 2
0
            public async Task WhenTransportIsNotConnected_ShouldGoStraightToClosed(TransportState transportState)
            {
                var client = await GetConnectedClient();

                // Arrange
                client.ConnectionManager.Transport = new FakeTransport {
                    State = transportState
                };

                // Act
                client.ExecuteCommand(SetClosingStateCommand.Create());

                await client.ProcessCommands();

                // Assert
                client.State.Connection.State.Should().Be(ConnectionState.Closed);
            }
Exemplo n.º 3
0
 public override void Close()
 {
     Context.ExecuteCommand(SetClosingStateCommand.Create().TriggeredBy("ConnectedState.Close()"));
 }
Exemplo n.º 4
0
 public override void Close()
 {
     TransitionState(SetClosingStateCommand.Create().TriggeredBy("ConnectingState.Close()"));
 }