### Question:
URISupport { public static URI removeQuery(URI uri) throws URISyntaxException { return PropertyUtil.replaceQuery(uri, (String) null); }  static CompositeData parseComposite(URI uri); static boolean isCompositeURI(URI uri); static boolean checkParenthesis(String str); static int indexOfParenthesisMatch(String str, int first); static String[] splitComponents(String str); static URI removeQuery(URI uri); static Map<String, String> parseParameters(URI uri); static URI applyParameters(URI uri, Map<String, String> queryParameters); static URI applyParameters(URI uri, Map<String, String> queryParameters, String optionPrefix);  }### Answer:
@Test public void testParsingURI() throws Exception { URI source = new URI("tcp: Map<String, String> map = PropertyUtil.parseQuery(source); assertEquals("Size: " + map, 2, map.size()); assertMapKey(map, "cheese", "Edam"); assertMapKey(map, "x", "123"); URI result = URISupport.removeQuery(source); assertEquals("result", new URI("tcp: }
@Test public void testParsingURIWithEmptyValuesInOptions() throws Exception { URI source = new URI("tcp: Map<String, String> map = PropertyUtil.parseQuery(source); assertEquals("Size: " + map, 2, map.size()); assertMapKey(map, "cheese", ""); assertMapKey(map, "x", ""); URI result = URISupport.removeQuery(source); assertEquals("result", new URI("tcp: }