public void DisconnectShouldTransitionToDisconnectedState() { // Arrange IClient serverClient = Substitute.For <IClient>(); IMultiplayerSessionConnectionContext connectionContext = Substitute.For <IMultiplayerSessionConnectionContext>(); connectionContext.Client.Returns(serverClient); AwaitingReservationCredentials connectionState = new AwaitingReservationCredentials(); // Act connectionState.Disconnect(connectionContext); // Assert connectionContext.Received().UpdateConnectionState(Arg.Any <Disconnected>()); }
public void DisconnectShouldResetTheConnectionContext() { // Arrange IClient serverClient = Substitute.For <IClient>(); IMultiplayerSessionConnectionContext connectionContext = Substitute.For <IMultiplayerSessionConnectionContext>(); connectionContext.Client.Returns(serverClient); AwaitingReservationCredentials connectionState = new AwaitingReservationCredentials(); // Act connectionState.Disconnect(connectionContext); // Assert connectionContext.Received().ClearSessionState(); }