### Question:
TraceeHttpResponseInterceptor implements HttpResponseInterceptor { @Override public final void process(HttpResponse response, HttpContext context) { final TraceeFilterConfiguration filterConfiguration = backend.getConfiguration(profile); final Header[] responseHeaders = response.getHeaders(TraceeConstants.TPIC_HEADER); if (responseHeaders != null && responseHeaders.length > 0 && filterConfiguration.shouldProcessContext(IncomingResponse)) { final List<String> stringTraceeHeaders = new ArrayList<>(); for (Header header : responseHeaders) { stringTraceeHeaders.add(header.getValue()); } backend.putAll(filterConfiguration.filterDeniedParams(transportSerialization.parse(stringTraceeHeaders), IncomingResponse)); } } TraceeHttpResponseInterceptor();  TraceeHttpResponseInterceptor(String profile);   TraceeHttpResponseInterceptor(TraceeBackend backend, String profile); @Override final void process(HttpResponse response, HttpContext context);  }### Answer:
@Test public void testResponseInterceptorParsesHttpHeaderToBackend() throws Exception { final HttpResponse httpResponse = new BasicHttpResponse(new BasicStatusLine(HttpVersion.HTTP_1_1, 404, "not found")); httpResponse.setHeader(TraceeConstants.TPIC_HEADER, "foobi=bar"); unit.process(httpResponse, mock(HttpContext.class)); assertThat(backend.get("foobi"), equalTo("bar")); }