【发布时间】:2026-02-23 05:15:01
【问题描述】:
我正在为此代码编写测试用例。
但我无法为此编写 junit 测试用例。我在为此编写 junit 测试用例时遇到问题。
请帮助为此编写 mockito 或 junit 测试用例。
public class BasicCacheManager implements CacheManager {
private ConcurrentHashMap<String, BasicCache> cacheMap;
private String defaultCache;
public BasicCacheManager() {
this.cacheMap = new ConcurrentHashMap<String, BasicCache>();
}
public BasicCacheManager(List<String> cacheNames) {
this.cacheMap = new ConcurrentHashMap<String, BasicCache>();
addCache(cacheNames);
}
@Override
public BasicCache getCache(){
return getCache(defaultCache);
}
@Override
public BasicCache getCache(String name) {
return cacheMap.get(name);
};
@Override
public void addCache(BasicCache cache) {
cacheMap.put(cache.getName(), cache);
};
@Override
public void removeCache(String name) {
cacheMap.remove(name);
};
@Override
public void removeAll() {
cacheMap = new ConcurrentHashMap<String, BasicCache>();
};
@Override
public boolean cacheExists(String name) {
return cacheMap.containsKey(name);
};
@Override
public void removeElement(String cacheName, String element){
BasicCache cache = getCache(cacheName);
if(cache != null){
cache.remove(element);
}
}
// added final to avoid any child classes from overriding this method
private final void addCache(List<String> cacheNames) {
for (String cacheName : cacheNames) {
BasicCache cache = new BasicCache(cacheName);
addCache(cache);
}
}
}
【问题讨论】:
-
您能详细说明您遇到了什么问题吗?