### Question:
StringSockets { @VisibleForTesting static Func0<Socket> socketCreator(final String host, final int port, long quietTimeoutMs) { return Checked.f0(() -> { Socket socket = new Socket(host, port); socket.setSoTimeout((int) quietTimeoutMs); return socket; }); }  static Observable<String> from(final String host, final int port, long quietTimeoutMs,
            long reconnectDelayMs, Charset charset, Scheduler scheduler); static Observable<String> from(Func0<Socket> socketCreator, long quietTimeoutMs,
            long reconnectDelayMs, Charset charset, Scheduler scheduler); static Builder from(String host); static Observable<String> strings(final String host, final int port, int quietTimeoutMs,
            final Charset charset); static Observable<String> strings(Func0<Socket> socketCreator, final Charset charset); static Observable<String> mergeLinesFrom(Observable<HostPort> hostPorts,
            Scheduler scheduler); static Observable<String> mergeLinesFrom(Observable<HostPort> hostPorts, int maxLineLength); static Observable<String> mergeLinesFrom(Observable<HostPort> hostPorts,
            Scheduler scheduler, int maxLineLength); static Observable<String> mergeLinesFrom(Observable<HostPort> hostPorts); static void main(String[] args);  }### Answer:
@Test(expected = RuntimeException.class) public void testSocketCreatorThrowsException() { StringSockets.socketCreator("non-existent-host", 1234, 5000).call(); }