### Question:
DbNodeServiceImpl extends AbstractBaseService<DbNodeEntity> implements CacheUpdateService, DbNodeService, TimerService, PortalTimerService { protected void updateDbProperties() { if (minEvictableIdleTimeMillis != soaConfig.getDbMinEvictableIdleTimeMillis()) { minEvictableIdleTimeMillis = soaConfig.getDbMinEvictableIdleTimeMillis(); cacheDataMap.get().values().forEach(dataSource -> { try { if (dataSource instanceof DruidDataSource) { ((DruidDataSource) dataSource) .setMinEvictableIdleTimeMillis(minEvictableIdleTimeMillis); } } catch (Exception e) { } }); } if (minIdle != soaConfig.getInitDbCount() && maxActive != soaConfig.getMaxDbCount()) { log.warn("dataSource_MinIdle_changed,from {} to {}", minIdle, soaConfig.getInitDbCount()); log.warn("dataSource_MaxActive_changed,from {} to {}", maxActive, soaConfig.getMaxDbCount()); maxActive = soaConfig.getMaxDbCount(); minIdle = soaConfig.getInitDbCount(); cacheDataMap.get().values().forEach(dataSource -> { if (dataSource instanceof DruidDataSource) { ((DruidDataSource) dataSource).setMinIdle(minIdle); ((DruidDataSource) dataSource).setMaxActive(maxActive); } }); } else if (minIdle != soaConfig.getInitDbCount()) { log.warn("dataSource_MinIdle_changed,from {} to {}", minIdle, soaConfig.getInitDbCount()); minIdle = soaConfig.getInitDbCount(); cacheDataMap.get().values().forEach(dataSource -> { if (dataSource instanceof DruidDataSource) { ((DruidDataSource) dataSource).setMinIdle(minIdle); } }); } else if (maxActive != soaConfig.getMaxDbCount()) { log.warn("dataSource_MaxActive_changed,from {} to {}", maxActive, soaConfig.getMaxDbCount()); maxActive = soaConfig.getMaxDbCount(); cacheDataMap.get().values().forEach(dataSource -> { if (dataSource instanceof DruidDataSource) { ((DruidDataSource) dataSource).setMaxActive(maxActive); } }); } }  @Override void start(); @Override void updateCache(); @Override void checkDataSource(DbNodeEntity dbNodeEntity); @Override boolean hasSlave(DbNodeEntity dbNodeEntity); @Override void createDataSource(DbNodeEntity t1); void initDataSource(DbNodeEntity t1, String key, Map<String, DataSource> dataMap, boolean isMaster,
							   Transaction transaction); @Override Map<Long, DbNodeEntity> getCache(); @Override Map<String, List<DbNodeEntity>> getCacheByIp(); @Override void forceUpdateCache(); @PreDestroy @Override void stop(); @Override DataSource getDataSource(long id, boolean isMaster); @Override String info(); @Override Map<String, DataSource> getDataSource(); @Override void startPortal(); @Override void stopPortal(); @Override String getCacheJson();  }### Answer:
@Test public void updateDbPropertiesTest() { Map<String, DataSource> dbCacheMap = new HashMap<String, DataSource>(); dbCacheMap.put("test", new DruidDataSource()); dbNodeServiceImpl.cacheDataMap.set(dbCacheMap); setProperty("mq.db.initCount", "11"); setProperty("mq.db.maxCount", "200"); dbNodeServiceImpl.updateDbProperties(); setProperty("mq.db.initCount", "12"); dbNodeServiceImpl.updateDbProperties(); setProperty("mq.db.maxCount", "201"); dbNodeServiceImpl.updateDbProperties(); }