FeatureResourceImpl implements FeatureResource { @Override @Path("/{idFeature}") @DELETE @ValidationRequired(processor = RestViolationProcessor.class) @ApiOperation(value = "Delete a feature", httpMethod="DELETE") @ApiResponses(value = { @ApiResponse(code = 204, message = "Feature was deleted"), @ApiResponse(code = 400, message = "Invalid input parameter (header)"), @ApiResponse(code = 404, message = "Feature was not found")}) public Response deleteFeature(@Auth BasicAuth principal, @ApiParam(value = "Application identifier", required = true) @NotBlank @NotNull @HeaderParam("api_key") String appIdentifier, @ApiParam(required=true, value="Feature identifier") @NotBlank @NotNull @PathParam("idFeature") String idFeature) throws FeatureNotExistException { validations.checkIsNotNullAndNotBlank(appIdentifier,idFeature); featureManager.deleteFeature(appIdentifier, idFeature); return Response.noContent().build(); }  @Override @POST @ValidationRequired(processor = RestViolationProcessor.class) @ApiOperation(value = "Store a feature", httpMethod="POST", response=FeatureDTO.class) @ApiResponses(value = { @ApiResponse(code = 200, message = "Feature was stored", response=FeatureDTO.class), @ApiResponse(code = 400, message = "Latitude range out of index"), @ApiResponse(code = 400, message = "Longitude range out of index"), @ApiResponse(code = 400, message = "Geometry is invalid"), @ApiResponse(code = 400, message = "Mongo GeoJSON format is not correct"), @ApiResponse(code = 400, message = "Invalid input parameter (header)")}) Response storeFeature(@Auth BasicAuth principal,
			@ApiParam(value = "Application identifier", required = true) @NotBlank @NotNull @HeaderParam("api_key") String appIdentifier,
			@ApiParam(required=true, value="Feature") @Valid @NotNull FeatureDTO featureDTO); @Override @Path("/{idFeature}") @DELETE @ValidationRequired(processor = RestViolationProcessor.class) @ApiOperation(value = "Delete a feature", httpMethod="DELETE") @ApiResponses(value = { @ApiResponse(code = 204, message = "Feature was deleted"), @ApiResponse(code = 400, message = "Invalid input parameter (header)"), @ApiResponse(code = 404, message = "Feature was not found")}) Response deleteFeature(@Auth BasicAuth principal,
			@ApiParam(value = "Application identifier", required = true) @NotBlank @NotNull @HeaderParam("api_key") String appIdentifier, 
			@ApiParam(required=true, value="Feature identifier") @NotBlank @NotNull @PathParam("idFeature") String idFeature); @Override @Path("/{idFeature}") @PUT @ValidationRequired(processor = RestViolationProcessor.class) @ApiOperation(value = "Update a feature", httpMethod="PUT", response=FeatureDTO.class) @ApiResponses(value = { @ApiResponse(code = 200, message = "Feature was updated", response=FeatureDTO.class), @ApiResponse(code = 400, message = "Latitude range out of index"), @ApiResponse(code = 400, message = "Longitude range out of index"), @ApiResponse(code = 400, message = "Geometry is invalid"), @ApiResponse(code = 400, message = "Mongo GeoJSON format is not correct"), @ApiResponse(code = 400, message = "Invalid input parameter (header)"), @ApiResponse(code = 404, message = "Feature was not found")}) Response updateFeature(@Auth BasicAuth principal,
			@ApiParam(value = "Application identifier", required = true) @NotBlank @NotNull @HeaderParam("api_key") String appIdentifier, 
			@ApiParam(required=true, value="Feature identifier") @NotBlank @NotNull @PathParam("idFeature") String idFeature, 
			@ApiParam(required=true, value="Updated feature") @Valid @NotNull FeatureDTO featureDTO); @Override @Path("/{idFeature}") @GET @ValidationRequired(processor = RestViolationProcessor.class) @ApiOperation(value = "Get a feature by id", httpMethod="GET", response=FeatureDTO.class) @ApiResponses(value = { @ApiResponse(code = 200, message = "Feature was found", response=FeatureDTO.class), @ApiResponse(code = 400, message = "Invalid input parameter (header)"), @ApiResponse(code = 404, message = "Feature was not found")}) Response getFeatureByID(@Auth BasicAuth principal,
			@ApiParam(value = "Application identifier", required = true) @NotBlank @NotNull @HeaderParam("api_key") String appIdentifier, 
			@ApiParam(required=true, value="Feature identifier") @NotBlank @NotNull @PathParam("idFeature") String idFeature);  }
@Test public void deleteGeoPoint() throws AssemblyException, FeatureNotExistException{ Response response=featureResourceImpl.deleteFeature(principal, APP_IDENTIFIER,ID_FEATURE); Mockito.verify(validations).checkIsNotNullAndNotBlank(APP_IDENTIFIER,ID_FEATURE); Mockito.verify(featureManagerImpl).deleteFeature(APP_IDENTIFIER,ID_FEATURE); assertEquals("The Status response is not the expected", 204, response.getStatus()); }