### Question:
PropertiesBasedTraceeFilterConfiguration implements TraceeFilterConfiguration { @Override public boolean shouldProcessContext(final Channel channel) { final String messageTypePropertyValue = getProfiledOrDefaultProperty(channel.name()); return !Utilities.isNullOrEmptyString(messageTypePropertyValue); } PropertiesBasedTraceeFilterConfiguration(PropertyChain propertyChain);  PropertiesBasedTraceeFilterConfiguration(PropertyChain propertyChain,
													String profileName); static PropertyChain loadPropertyChain(); @Override boolean shouldProcessParam(String paramName, Channel channel); @Override boolean shouldProcessContext(final Channel channel); @Override boolean shouldGenerateInvocationId(); @Override int generatedInvocationIdLength(); @Override boolean shouldGenerateSessionId(); @Override int generatedSessionIdLength(); @Override Map<String, String> filterDeniedParams(final Map<String, String> unfiltered, final Channel channel);  }### Answer:
@Test public void testShouldProcessIfDisabledByConfiguration() { when(propertyChain.getProperty(TRACEE_DEFAULT_PROFILE_PREFIX + AsyncDispatch.name())).thenReturn(" \t\n"); assertFalse(unit.shouldProcessContext(AsyncDispatch)); }
@Test public void testShouldProcessIfAnyPatternIsGiven() { when(propertyChain.getProperty(TRACEE_DEFAULT_PROFILE_PREFIX + AsyncDispatch.name())).thenReturn("a"); assertTrue(unit.shouldProcessContext(AsyncDispatch)); }