Path { public void param(Map<String, Object> params) { params.forEach((key, value) -> param(key, String.valueOf(value))); } Path(String url, String defaultBasePath);  Path(String url); void param(Map<String, Object> params); void param(String name, String value); void queryString(String name, Collection<?> value); void queryString(String name, Object value); void queryString(Map<String, Object> parameters); @Override String toString(); String rawPath(); String baseUrl(); @Override boolean equals(Object o); @Override int hashCode();  }
@Test public void pathsWithDifferentParams() { String raw = "http: Path q = new Path(raw, null); q.param("id", "apple"); Path w = new Path(raw, null); w.param("id", "apple"); Path e = new Path(raw, null); e.param("id", "oranges"); assertEquals(q,w); assertNotEquals(q, e); }