### Question:
BackendBase implements TraceeBackend { @Override public final TraceeFilterConfiguration getConfiguration() { return getConfiguration(null); }  @Override final TraceeFilterConfiguration getConfiguration(); @Override final TraceeFilterConfiguration getConfiguration(String profileName); @Override String getInvocationId(); @Override String getSessionId();  }### Answer:
@Test public void testLoadOverwrittenConfigurationValues() { assertThat(unit.getConfiguration().generatedInvocationIdLength(), equalTo(42)); }
@Test public void testLoadUserDefinedProfileFromProperties() { assertThat(unit.getConfiguration("FOO").shouldProcessParam("ANY", Channel.IncomingRequest), equalTo(true)); }
@Test public void testHideInboundProfile() { assertThat(unit.getConfiguration(HIDE_INBOUND).shouldProcessContext(Channel.OutgoingResponse), equalTo(false)); }
@Test public void testHideOutboundProfile() { assertThat(unit.getConfiguration(HIDE_OUTBOUND).shouldProcessContext(Channel.OutgoingRequest), equalTo(false)); }
@Test public void testDisableInboundProfile() { assertThat(unit.getConfiguration(DISABLE_INBOUND).shouldProcessContext(Channel.IncomingRequest), equalTo(false)); assertThat(unit.getConfiguration(DISABLE_INBOUND).shouldProcessContext(Channel.OutgoingResponse), equalTo(false)); }
@Test public void testDisableOutboundProfile() { assertThat(unit.getConfiguration(DISABLE_OUTBOUND).shouldProcessContext(Channel.OutgoingRequest), equalTo(false)); assertThat(unit.getConfiguration(DISABLE_OUTBOUND).shouldProcessContext(Channel.IncomingResponse), equalTo(false)); }
@Test public void testDisabledProfile() { assertThat(unit.getConfiguration(DISABLED).shouldProcessContext(Channel.AsyncDispatch), equalTo(false)); assertThat(unit.getConfiguration(DISABLED).shouldProcessContext(Channel.AsyncProcess), equalTo(false)); assertThat(unit.getConfiguration(DISABLED).shouldProcessContext(Channel.IncomingRequest), equalTo(false)); assertThat(unit.getConfiguration(DISABLED).shouldProcessContext(Channel.IncomingResponse), equalTo(false)); assertThat(unit.getConfiguration(DISABLED).shouldProcessContext(Channel.OutgoingRequest), equalTo(false)); assertThat(unit.getConfiguration(DISABLED).shouldProcessContext(Channel.OutgoingResponse), equalTo(false)); }
@Test public void testNullProfile() { assertThat(unit.getConfiguration(null), is(not(nullValue()))); }
@Test public void testProfileCacheForEmptyOrNullProfile() { assertThat(unit.getConfiguration(), is(unit.getConfiguration(null))); }
@Test public void testProfileCacheForGivenProfile() { final TraceeFilterConfiguration hideInboundConfiguration = unit.getConfiguration(HIDE_INBOUND); assertThat(unit.getConfiguration(HIDE_INBOUND), is(sameInstance(hideInboundConfiguration))); }
@Test public void testProfileCacheForDifferenceProfiles() { final TraceeFilterConfiguration hideInboundConfiguration = unit.getConfiguration(HIDE_OUTBOUND); assertThat(unit.getConfiguration(HIDE_INBOUND), is(not(sameInstance(hideInboundConfiguration)))); }