### Question:
ClientConfigLoader { RSConfig fetch() throws IOException { final Request request = new Request.Builder() .url(CONFIG_URL) .build(); final RSConfig config = new RSConfig(); try (final Response response = httpClient.newCall(request).execute(); final BufferedReader in = new BufferedReader( new InputStreamReader(response.body().byteStream()))) { String str; while ((str = in.readLine()) != null) { int idx = str.indexOf('='); if (idx == -1) { continue; } String s = str.substring(0, idx); switch (s) { case "param": str = str.substring(idx + 1); idx = str.indexOf('='); s = str.substring(0, idx); config.getAppletProperties().put(s, str.substring(idx + 1)); break; case "msg": break; default: config.getClassLoaderProperties().put(s, str.substring(idx + 1)); break; } } } return config; } @Inject @VisibleForTesting  ClientConfigLoader(final OkHttpClient httpClient);   }### Answer:
@Test public void test() throws IOException { final ClientConfigLoader loader = new ClientConfigLoader(new OkHttpClient()); final RSConfig config = loader.fetch(); for (String key : config.getClassLoaderProperties().keySet()) { System.out.println(key + ": " + config.getClassLoaderProperties().get(key)); } System.out.println("Applet properties:"); for (String key : config.getAppletProperties().keySet()) { System.out.println(key + ": " + config.getAppletProperties().get(key)); } }