### Question:
TraceeHttpRequestInterceptor implements HttpRequestInterceptor { @Override public final void process(final HttpRequest httpRequest, final HttpContext httpContext) { final TraceeFilterConfiguration filterConfiguration = backend.getConfiguration(profile); if (!backend.isEmpty() && filterConfiguration.shouldProcessContext(OutgoingRequest)) { final Map<String, String> filteredParams = filterConfiguration.filterDeniedParams(backend.copyToMap(), OutgoingRequest); httpRequest.setHeader(TraceeConstants.TPIC_HEADER, transportSerialization.render(filteredParams)); } } TraceeHttpRequestInterceptor();  TraceeHttpRequestInterceptor(String profile);   TraceeHttpRequestInterceptor(TraceeBackend backend, String profile); @Override final void process(final HttpRequest httpRequest, final HttpContext httpContext);  }### Answer:
@Test public void testRequestInterceptorWritesTraceeContextToRequestHeader() throws Exception { final HttpRequest httpRequest = new BasicHttpRequest("GET", "http: backend.put("foo", "bar"); unit.process(httpRequest, mock(HttpContext.class)); assertThat("HttpRequest contains TracEE Context Header", httpRequest.containsHeader(TraceeConstants.TPIC_HEADER), equalTo(true)); assertThat(httpRequest.getFirstHeader(TraceeConstants.TPIC_HEADER).getValue(), equalTo("foo=bar")); }