### Question:
PsuIdTypeHeaderInterceptor implements Interceptor { @Override public Request.Builder preHandle(Request.Builder builder) { return handlePsuIdTypeHeader(builder); }  @Override Request.Builder preHandle(Request.Builder builder);  }### Answer:
@Test void apply_noPsuIdType() { interceptor.preHandle(builder); assertFalse(builder.headers().containsKey(PSU_ID_TYPE)); checkAssertions(builder); }
@Test void apply_psuIdTypeWithoutValue() { builder.header(PSU_ID_TYPE, ""); interceptor.preHandle(builder); assertFalse(builder.headers().containsKey(PSU_ID_TYPE)); checkAssertions(builder); }
@Test void apply_psuIdTypeWithEmptyValue() { builder.header(PSU_ID_TYPE, EMPTY_VALUE); interceptor.preHandle(builder); assertFalse(builder.headers().containsKey(PSU_ID_TYPE)); checkAssertions(builder); }
@Test void apply_psuIdTypeWithValue() { builder.header(PSU_ID_TYPE, SOME_PSU_ID_TYPE); interceptor.preHandle(builder); assertTrue(builder.headers().containsKey(PSU_ID_TYPE)); assertEquals(SOME_PSU_ID_TYPE, builder.headers().get(PSU_ID_TYPE)); checkAssertions(builder); }