public void DelayConnectingHttpSocketAdapter_Dispose_DoesNotDisposeASecondTime()
        {
            // Arrange
            IHttpSocketAdapter delayAdapter = new DelayConnectingHttpSocketAdapter(ConnectOnlyOnce);

            delayAdapter.CompleteRequest();
            delayAdapter.Dispose();

            // Act
            delayAdapter.Dispose();

            // Assert
            //   If we got here, the adapter was not Disposed a second time
        }
        public void DelayConnectingHttpSocketAdapter_Dispose_DoesNothingIfNotConnected()
        {
            // Arrange
            IHttpSocketAdapter delayAdapter = new DelayConnectingHttpSocketAdapter(ConnectOnlyOnce);

            // Act
            delayAdapter.Dispose();

            // Assert
            //   Should do nothing
        }
        public void DelayConnectingHttpSocketAdapter_Dispose_DisposesExistingConnection()
        {
            // Arrange
            IHttpSocketAdapter delayAdapter = new DelayConnectingHttpSocketAdapter(ConnectOnlyOnce);

            delayAdapter.WaitForResponseComplete();

            // Act
            delayAdapter.Dispose();

            // Assert
            Assert.True(_createdAdapter.IsDisposed);
        }