public async Task should_disconnect()
        {
            /* Given */
            var log        = Substitute.For <ILogger <GraphQLEndPoint <TestSchema> > >();
            var handler    = Substitute.For <ISubscriptionProtocolHandler <TestSchema> >();
            var connection = Substitute.For <IConnectionContext>();

            connection.ConnectionId.Returns("1");

            var sut = new GraphQLEndPoint <TestSchema>(handler, log);

            /* When */
            await sut.OnConnectedAsync(connection).ConfigureAwait(false);

            await sut.CloseConnectionAsync(connection).ConfigureAwait(false);

            /* Then */
            Assert.False(sut.Connections.ContainsKey(connection.ConnectionId));
            await connection.Received().CloseAsync().ConfigureAwait(false);
        }