### Question:
SoftExpiringCache { public CachedObject<V> getElement(K key) { V value = cache.getElement(key); if (value == null) { return null; } Long expiration = expirationTimes.get(value); if (expiration == null) { return null; } return new CachedObject<V>(value, expiration < timeSource.currentTimeMillis()); } SoftExpiringCache(Cache<K, V>  cache); CachedObject<V> getElement(K key); void addElement(K key, V value, long maxAge); void setTimeSource(TimeSource timeSource);  }### Answer:
@Test public void testMissingValue() { SoftExpiringCache<String, String> expiringCache = makeSoftExpiringCache(); assertNull(expiringCache.getElement("not set")); }