### Question:
Url { public final String toString() { String[] baseParts; if (url.toString().contains(": baseParts = url.toString().split(": } else { baseParts = new String[] { "http", url.toString() }; } String scheme, ssp, path, query; scheme = baseParts[0]; if (baseParts[1].contains("/")) { ssp = baseParts[1].substring(0, baseParts[1].indexOf("/")); path = baseParts[1].substring(baseParts[1].indexOf("/")); } else { ssp = baseParts[1]; path = ""; } query = StringUtils.trimToNull(StringUtils.join(queryParams, "&")); try { return new URI(scheme, ssp, path, query, null).toASCIIString(); } catch (URISyntaxException use) { throw new RuntimeUriSyntaxException("Cannot create URL", use); } } Url(String base);  Url(Url toBeCopied); final Url withPath(String path); final Url withParam(String key, String value); final String toString();  }### Answer:
@Test public void basicUrlMakesAString() { String url = new Url("http: assertThat(url, is("http: }
@Test public void assumesHttpAsScheme() { assertThat(new Url("localhost/").toString(), is("http: }