1
0
mirror of https://github.com/square/okhttp.git synced 2026-01-17 08:42:25 +03:00

Test code refactoring

Modify the various Delegating*SocketFactory implementations
to return a *Socket from configureSocket() rather than assume
configuration just modifies the object supplied. Improves
flexibility and reduces the need to override multiple methods
in some places.
This commit is contained in:
Neil Fuller
2015-08-06 17:23:12 +01:00
parent e364ccf27c
commit 765a9659af
8 changed files with 34 additions and 59 deletions

View File

@@ -1889,8 +1889,9 @@ public final class CallTest {
} }
@Override @Override
protected void configureSocket(SSLSocket sslSocket) throws IOException { protected SSLSocket configureSocket(SSLSocket sslSocket) throws IOException {
socketsCreated.add(sslSocket); socketsCreated.add(sslSocket);
return sslSocket;
} }
public List<SSLSocket> getSocketsCreated() { public List<SSLSocket> getSocketsCreated() {

View File

@@ -90,7 +90,8 @@ public class DelegatingSSLSocketFactory extends SSLSocketFactory {
return sslSocket; return sslSocket;
} }
protected void configureSocket(SSLSocket sslSocket) throws IOException { protected SSLSocket configureSocket(SSLSocket sslSocket) throws IOException {
// No-op by default. // No-op by default.
return sslSocket;
} }
} }

View File

@@ -35,33 +35,30 @@ public class DelegatingServerSocketFactory extends ServerSocketFactory {
@Override @Override
public ServerSocket createServerSocket() throws IOException { public ServerSocket createServerSocket() throws IOException {
ServerSocket serverSocket = delegate.createServerSocket(); ServerSocket serverSocket = delegate.createServerSocket();
configureServerSocket(serverSocket); return configureServerSocket(serverSocket);
return serverSocket;
} }
@Override @Override
public ServerSocket createServerSocket(int port) throws IOException { public ServerSocket createServerSocket(int port) throws IOException {
ServerSocket serverSocket = delegate.createServerSocket(port); ServerSocket serverSocket = delegate.createServerSocket(port);
configureServerSocket(serverSocket); return configureServerSocket(serverSocket);
return serverSocket;
} }
@Override @Override
public ServerSocket createServerSocket(int port, int backlog) throws IOException { public ServerSocket createServerSocket(int port, int backlog) throws IOException {
ServerSocket serverSocket = delegate.createServerSocket(port, backlog); ServerSocket serverSocket = delegate.createServerSocket(port, backlog);
configureServerSocket(serverSocket); return configureServerSocket(serverSocket);
return serverSocket;
} }
@Override @Override
public ServerSocket createServerSocket(int port, int backlog, InetAddress ifAddress) public ServerSocket createServerSocket(int port, int backlog, InetAddress ifAddress)
throws IOException { throws IOException {
ServerSocket serverSocket = delegate.createServerSocket(port, backlog, ifAddress); ServerSocket serverSocket = delegate.createServerSocket(port, backlog, ifAddress);
configureServerSocket(serverSocket); return configureServerSocket(serverSocket);
return serverSocket;
} }
protected void configureServerSocket(ServerSocket serverSocket) throws IOException { protected ServerSocket configureServerSocket(ServerSocket serverSocket) throws IOException {
// No-op by default. // No-op by default.
return serverSocket;
} }
} }

View File

@@ -36,41 +36,37 @@ public class DelegatingSocketFactory extends SocketFactory {
@Override @Override
public Socket createSocket() throws IOException { public Socket createSocket() throws IOException {
Socket socket = delegate.createSocket(); Socket socket = delegate.createSocket();
configureSocket(socket); return configureSocket(socket);
return socket;
} }
@Override @Override
public Socket createSocket(String host, int port) throws IOException, UnknownHostException { public Socket createSocket(String host, int port) throws IOException, UnknownHostException {
Socket socket = delegate.createSocket(host, port); Socket socket = delegate.createSocket(host, port);
configureSocket(socket); return configureSocket(socket);
return socket;
} }
@Override @Override
public Socket createSocket(String host, int port, InetAddress localAddress, int localPort) public Socket createSocket(String host, int port, InetAddress localAddress, int localPort)
throws IOException, UnknownHostException { throws IOException, UnknownHostException {
Socket socket = delegate.createSocket(host, port, localAddress, localPort); Socket socket = delegate.createSocket(host, port, localAddress, localPort);
configureSocket(socket); return configureSocket(socket);
return socket;
} }
@Override @Override
public Socket createSocket(InetAddress host, int port) throws IOException { public Socket createSocket(InetAddress host, int port) throws IOException {
Socket socket = delegate.createSocket(host, port); Socket socket = delegate.createSocket(host, port);
configureSocket(socket); return configureSocket(socket);
return socket;
} }
@Override @Override
public Socket createSocket(InetAddress host, int port, InetAddress localAddress, int localPort) public Socket createSocket(InetAddress host, int port, InetAddress localAddress, int localPort)
throws IOException { throws IOException {
Socket socket = delegate.createSocket(host, port, localAddress, localPort); Socket socket = delegate.createSocket(host, port, localAddress, localPort);
configureSocket(socket); return configureSocket(socket);
return socket;
} }
protected void configureSocket(Socket socket) throws IOException { protected Socket configureSocket(Socket socket) throws IOException {
// No-op by default. // No-op by default.
return socket;
} }
} }

View File

@@ -40,37 +40,8 @@ public class FallbackTestClientSocketFactory extends DelegatingSSLSocketFactory
super(delegate); super(delegate);
} }
@Override public SSLSocket createSocket(Socket s, String host, int port, boolean autoClose) @Override protected SSLSocket configureSocket(SSLSocket sslSocket) throws IOException {
throws IOException { return new TlsFallbackScsvDisabledSSLSocket(sslSocket);
SSLSocket socket = super.createSocket(s, host, port, autoClose);
return new TlsFallbackScsvDisabledSSLSocket(socket);
}
@Override public SSLSocket createSocket() throws IOException {
SSLSocket socket = super.createSocket();
return new TlsFallbackScsvDisabledSSLSocket(socket);
}
@Override public SSLSocket createSocket(String host,int port) throws IOException {
SSLSocket socket = super.createSocket(host, port);
return new TlsFallbackScsvDisabledSSLSocket(socket);
}
@Override public SSLSocket createSocket(String host,int port, InetAddress localHost,
int localPort) throws IOException {
SSLSocket socket = super.createSocket(host, port, localHost, localPort);
return new TlsFallbackScsvDisabledSSLSocket(socket);
}
@Override public SSLSocket createSocket(InetAddress host,int port) throws IOException {
SSLSocket socket = super.createSocket(host, port);
return new TlsFallbackScsvDisabledSSLSocket(socket);
}
@Override public SSLSocket createSocket(InetAddress address,int port,
InetAddress localAddress, int localPort) throws IOException {
SSLSocket socket = super.createSocket(address, port, localAddress, localPort);
return new TlsFallbackScsvDisabledSSLSocket(socket);
} }
private static class TlsFallbackScsvDisabledSSLSocket extends DelegatingSSLSocket { private static class TlsFallbackScsvDisabledSSLSocket extends DelegatingSSLSocket {

View File

@@ -2232,15 +2232,18 @@ public final class URLConnectionTest {
server.setServerSocketFactory( server.setServerSocketFactory(
new DelegatingServerSocketFactory(ServerSocketFactory.getDefault()) { new DelegatingServerSocketFactory(ServerSocketFactory.getDefault()) {
@Override @Override
protected void configureServerSocket(ServerSocket serverSocket) throws IOException { protected ServerSocket configureServerSocket(ServerSocket serverSocket)
throws IOException {
serverSocket.setReceiveBufferSize(SOCKET_BUFFER_SIZE); serverSocket.setReceiveBufferSize(SOCKET_BUFFER_SIZE);
return serverSocket;
} }
}); });
client.client().setSocketFactory(new DelegatingSocketFactory(SocketFactory.getDefault()) { client.client().setSocketFactory(new DelegatingSocketFactory(SocketFactory.getDefault()) {
@Override @Override
protected void configureSocket(Socket socket) throws IOException { protected Socket configureSocket(Socket socket) throws IOException {
socket.setReceiveBufferSize(SOCKET_BUFFER_SIZE); socket.setReceiveBufferSize(SOCKET_BUFFER_SIZE);
socket.setSendBufferSize(SOCKET_BUFFER_SIZE); socket.setSendBufferSize(SOCKET_BUFFER_SIZE);
return socket;
} }
}); });

View File

@@ -55,15 +55,18 @@ public final class DisconnectTest {
server.setServerSocketFactory( server.setServerSocketFactory(
new DelegatingServerSocketFactory(ServerSocketFactory.getDefault()) { new DelegatingServerSocketFactory(ServerSocketFactory.getDefault()) {
@Override @Override
protected void configureServerSocket(ServerSocket serverSocket) throws IOException { protected ServerSocket configureServerSocket(ServerSocket serverSocket)
throws IOException {
serverSocket.setReceiveBufferSize(SOCKET_BUFFER_SIZE); serverSocket.setReceiveBufferSize(SOCKET_BUFFER_SIZE);
return serverSocket;
} }
}); });
client.setSocketFactory(new DelegatingSocketFactory(SocketFactory.getDefault()) { client.setSocketFactory(new DelegatingSocketFactory(SocketFactory.getDefault()) {
@Override @Override
protected void configureSocket(Socket socket) throws IOException { protected Socket configureSocket(Socket socket) throws IOException {
socket.setSendBufferSize(SOCKET_BUFFER_SIZE); socket.setSendBufferSize(SOCKET_BUFFER_SIZE);
socket.setReceiveBufferSize(SOCKET_BUFFER_SIZE); socket.setReceiveBufferSize(SOCKET_BUFFER_SIZE);
return socket;
} }
}); });
} }

View File

@@ -57,15 +57,18 @@ public final class ThreadInterruptTest {
server.setServerSocketFactory( server.setServerSocketFactory(
new DelegatingServerSocketFactory(ServerSocketFactory.getDefault()) { new DelegatingServerSocketFactory(ServerSocketFactory.getDefault()) {
@Override @Override
protected void configureServerSocket(ServerSocket serverSocket) throws IOException { protected ServerSocket configureServerSocket(ServerSocket serverSocket)
throws IOException {
serverSocket.setReceiveBufferSize(SOCKET_BUFFER_SIZE); serverSocket.setReceiveBufferSize(SOCKET_BUFFER_SIZE);
return serverSocket;
} }
}); });
client.setSocketFactory(new DelegatingSocketFactory(SocketFactory.getDefault()) { client.setSocketFactory(new DelegatingSocketFactory(SocketFactory.getDefault()) {
@Override @Override
protected void configureSocket(Socket socket) throws IOException { protected Socket configureSocket(Socket socket) throws IOException {
socket.setSendBufferSize(SOCKET_BUFFER_SIZE); socket.setSendBufferSize(SOCKET_BUFFER_SIZE);
socket.setReceiveBufferSize(SOCKET_BUFFER_SIZE); socket.setReceiveBufferSize(SOCKET_BUFFER_SIZE);
return socket;
} }
}); });
} }