### Question:
ExecutionContextImpl implements ExecutionContext { public String toString() { StringBuilder sb = new StringBuilder(); sb.append("geoLocationDetails=").append(geoLocationDetails).append("|"); sb.append("identityChain=").append(identity).append("|"); sb.append("requestUUID=").append(requestUUID).append("|"); sb.append("receivedTime=").append(receivedTime).append("|"); sb.append("requestTime=").append(requestTime).append("|"); sb.append("traceLoggingEnabled=").append(traceLoggingEnabled).append("|"); sb.append("transportSecurityStrengthFactor=").append(transportSecurityStrengthFactor); return sb.toString(); } ExecutionContextImpl();  ExecutionContextImpl(ExecutionContext ctx); @Override GeoLocationDetails getLocation(); @Override IdentityChain getIdentity(); @Override RequestUUID getRequestUUID(); @Override Date getReceivedTime(); @Override boolean traceLoggingEnabled(); @Override int getTransportSecurityStrengthFactor(); @Override boolean isTransportSecure(); Date getRequestTime(); void setRequestTime(Date requestTime); void setGeoLocationDetails(GeoLocationDetails geoLocationDetails); void setIdentity(IdentityChain identity); void setRequestUUID(RequestUUID requestUUID); void setReceivedTime(Date receivedTime); void setTraceLoggingEnabled(boolean traceLoggingEnabled); void setTransportSecurityStrengthFactor(int transportSecurityStrengthFactor); String toString();  }### Answer:
@Test public void testToString() { ExecutionContextImpl ec = new ExecutionContextImpl(); ec.toString(); ec.setGeoLocationDetails(new GeoLocationDetails() { @Override public String getRemoteAddr() { return null; } @Override public List<String> getResolvedAddresses() { return null; } @Override public String getCountry() { return null; } @Override public boolean isLowConfidenceGeoLocation() { return false; } @Override public String getLocation() { return null; } @Override public String getInferredCountry() { return null; } public String toString() { return GEO; } }); ec.setIdentity(new IdentityChain() { @Override public void addIdentity(Identity identity) { } @Override public List<Identity> getIdentities() { return null; } @Override public <T extends Identity> List<T> getIdentities(Class<T> clazz) { return null; } public String toString() { return ID; } }); ec.setReceivedTime(new Date()); ec.setRequestUUID(new RequestUUID() { @Override public String getUUID() { return null; } @Override public String toCougarLogString() { return null; } public String toString() { return UUID; } @Override public String getRootUUIDComponent() { return null; } @Override public String getParentUUIDComponent() { return null; } @Override public String getLocalUUIDComponent() { return UUID; } @Override public RequestUUID getNewSubUUID() { return null; } }); ec.setTraceLoggingEnabled(false); String result = ec.toString(); assertTrue(result.contains(GEO)); assertTrue(result.contains(ID)); assertTrue(result.contains(UUID)); }