### Question:
AddGeoLocalisationTransformator extends TransformatorProcess { public void apply(String idProcess, ParameterTransformation parameterTransformation, ObjectNode jsonValue) { String key = parameterTransformation.getKeyField(); String ipToResolve = getJsonUtils().at(jsonValue, parameterTransformation.getKeyField()).asText(); log.debug("Start to localise IP address [{}]", ipToResolve); if (jsonValue.has(parameterTransformation.getKeyField()) && jsonValue.path(parameterTransformation.getKeyField()).asText() != null && !jsonValue.path(parameterTransformation.getKeyField()).asText().equals("null")) { try { InetAddress ipAddress = InetAddress.getByName(ipToResolve); CityResponse response = reader.city(ipAddress); Country country = response.getCountry(); Subdivision subdivision = response.getMostSpecificSubdivision(); City city = response.getCity(); Postal postal = response.getPostal(); Location location = response.getLocation(); put(jsonValue, key + "_country_name", country.getName()); put(jsonValue, key + "_country_isocode", country.getIsoCode()); put(jsonValue, key + "_city_name", response.getCity().getName()); put(jsonValue, key + "_subdivision_name", subdivision.getName()); put(jsonValue, key + "_subdivision_isocode", subdivision.getIsoCode()); put(jsonValue, key + "_city_name", city.getName()); put(jsonValue, key + "_city_postalcode", postal.getCode()); put(jsonValue, key + "_location_gp", location.getLatitude().toString() + "," + location.getLongitude().toString()); } catch (Exception ex) { log.error("Exception during Geo IP Transformation {}", ipToResolve); ex.printStackTrace(); } } log.debug("End to localise IP address [{}]", ipToResolve); } AddGeoLocalisationTransformator(); void apply(String idProcess, ParameterTransformation parameterTransformation, ObjectNode jsonValue);  }### Answer:
@Test public void should_Process_Ok() throws Exception { AddGeoLocalisationTransformator addGeoLocalisationTransformator = new AddGeoLocalisationTransformator(); RawDataGen rd = RawDataGen.builder().messageSend("Test add Geo-Localisation").project("82.245.25.86").type("type").build(); ObjectMapper obj = new ObjectMapper(); String value = obj.writeValueAsString(rd); ObjectNode jsonValue = JSONUtils.getInstance().parseObj(value); addGeoLocalisationTransformator.apply(null, ParameterTransformation.builder(). keyField("project"). build(), jsonValue); assertThat(jsonValue.path("project_country_name").asText()).isEqualTo("France"); }