### Question:
OsmHash { public OsmHash(Area bounds, List<EntityDef> entities, boolean fullDataSet) throws TextureProcessingException { this.fullDataSet = fullDataSet; this.entityHash = fullDataSet ? "all" : getQueryHashEntities(entities); try { this.locationHash = getQueryHashLocation(bounds); this.queryHash = locationHash + "-" + entityHash; } catch(IOException e) { throw new TextureProcessingException("Unexpected Exception: Could not generate hash for this location", e); } } OsmHash(Area bounds, List<EntityDef> entities, boolean fullDataSet);  OsmHash(Area bounds, List<EntityDef> entities);  OsmHash(Area bounds); String getQueryHash(); boolean hasFullDataSet(); Area getHashedLocation(); boolean isCached(); @Override int hashCode(); @Override boolean equals(Object obj); @Override String toString();  }### Answer:
@Test public void testOsmHash() throws Exception { Area ar = new Area(48, 11, 49, 12); OsmHash h = new OsmHash(ar); String expected = "IcAInQB7wCHA-all"; String actual = h.getQueryHash(); assertEquals(expected, actual); }