### Question:
Kelly { public boolean put(String key, CacheEntry<T> value) throws KellyException { try { return cacheProvider.put(key,value); } catch (CacheProviderException e) { throw new KellyException(e); } } @Deprecated  Kelly(CacheProvider<T> cacheProvider, CacheLoader<T> cacheLoader, int executorPoolSize);  Kelly(CacheProvider<T> cacheProvider, CacheLoader<T> cacheLoader, int threadPoolSize,
                 int queueSize); T get(String key); boolean put(String key, CacheEntry<T> value); void expire(String key);  }### Answer:
@Test public void kellyPutTest() throws CacheProviderException, KellyException { CacheProvider<String> cacheProvider = Mockito.mock(CacheProvider.class); CacheLoader<String> cacheLoader = Mockito.mock(CacheLoader.class); CacheEntry<String> cacheEntry = new CacheEntry<String>("dude","suman",1); Mockito.when(cacheProvider.put("dude",cacheEntry)).thenReturn(true); Kelly<String> kelly = new Kelly<String>(cacheProvider,cacheLoader,1); assert kelly.put("dude",cacheEntry); Mockito.verify(cacheProvider).put("dude", cacheEntry); }