@Override
            public void connectFailed(SessionProtocol protocol, Endpoint endpoint,
                                      SocketAddress sa, Throwable throwable) {
                assertThat(protocol).isEqualTo(SessionProtocol.H1C);
                assertThat(endpoint).isEqualTo(backendServer.httpEndpoint());
                assertThat(sa).isEqualTo(socksProxyServer.address());
                assertThat(throwable).isInstanceOf(UnprocessedRequestException.class)
                                     .hasCauseInstanceOf(ProxyConnectException.class);
                throw new RuntimeException("connectFailed exception");
            }
Tests if a request is failed with {@link SessionProtocolNegotiationException} if a session negotiation
with the backend server takes longer than a connection timeout.

<p>Cleartext protocol are not used because the session could immediately complete when a connection is
established with the proxy server.
core/src/test/java/com/linecorp/armeria/client/proxy/ProxyClientIntegrationTest.java