### Question:
WrappedMessageContext implements MessageContext { public final boolean containsKey(Object key) { return message.containsKey(mapKey((String)key)) || get(key) != null; } WrappedMessageContext(Message m);  WrappedMessageContext(Message m, Scope defScope);  WrappedMessageContext(Map<String, Object> m, Exchange ex, Scope defScope); final Message getWrappedMessage(); final Map<String, Object> getWrappedMap(); void clear(); final boolean containsKey(Object key); final boolean containsValue(Object value); Object get(Object key); final boolean isEmpty(); final Set<String> keySet(); final Set<Entry<String, Object>> entrySet(); final Object put(String key, Object value); final Object put(String key, Object value, Scope scope); final void putAll(Map<? extends String, ? extends Object> t); final Object remove(Object key); final int size(); final Collection<Object> values(); final void setScope(String key, Scope arg1); final Scope getScope(String key); final Map<String, Scope> getScopes(); static final String SCOPES; }### Answer:
@Test public void testContainsKey() throws Exception { WrappedMessageContext context = new WrappedMessageContext(new HashMap<String, Object>(), null, Scope.APPLICATION); Map<String, List<String>> headers = new HashMap<>(); context.put(MessageContext.HTTP_REQUEST_HEADERS, headers); assertNotNull(context.get(MessageContext.HTTP_REQUEST_HEADERS)); assertTrue(context.containsKey(MessageContext.HTTP_REQUEST_HEADERS)); }