public void JoinSessionShouldThrowInvalidOperationException() { // Arrange IMultiplayerSessionConnectionContext connectionContext = Substitute.For <IMultiplayerSessionConnectionContext>(); Disconnected connectionState = new Disconnected(); // Act Action action = () => connectionState.JoinSession(connectionContext); // Assert action.ShouldThrow <InvalidOperationException>(); }