From c2489ecbd13878e205f8528eeb150d5cd0200d47 Mon Sep 17 00:00:00 2001
From: Kai Reinhard <K.Reinhard@micromata.de>
Date: Sat, 08 Dec 2018 17:41:12 +0000
Subject: [PATCH] Caches...

---
 borgbutler-core/src/test/java/de/micromata/borgbutler/cache/CacheTest.java |   42 +++++++++++++++++++++++++++---------------
 1 files changed, 27 insertions(+), 15 deletions(-)

diff --git a/borgbutler-core/src/test/java/de/micromata/borgbutler/cache/CacheTest.java b/borgbutler-core/src/test/java/de/micromata/borgbutler/cache/CacheTest.java
index 6bdc42a..37bd9a7 100644
--- a/borgbutler-core/src/test/java/de/micromata/borgbutler/cache/CacheTest.java
+++ b/borgbutler-core/src/test/java/de/micromata/borgbutler/cache/CacheTest.java
@@ -18,7 +18,7 @@
     private static Logger log = LoggerFactory.getLogger(CacheTest.class);
 
     @Test
-    void reposCacheTest() {
+    void repoCacheTest() {
         ConfigurationHandler configHandler = ConfigurationHandler.getInstance();
         configHandler.read();
         Configuration config = ConfigurationHandler.getConfiguration();
@@ -26,31 +26,43 @@
             log.info("No repos configured. Please configure repos first in: " + configHandler.getConfigFile().getAbsolutePath());
             return;
         }
-        RepoInfoCache cache = ButlerCache.getReposCache();
-        cache.read();
-        if (cache.getElements().size() != config.getRepos().size()) {
-            refreshReposCache(config, cache);
+        ButlerCache butlerCache = ButlerCache.getInstance();
+        //butlerCache.removeAllCacheFiles();
+        butlerCache.read();
+        {
+            RepoInfoCache repoInfoCache = ButlerCache.getRepoInfoCache();
+            if (repoInfoCache.getElements().size() != config.getRepos().size()) {
+                refreshRepoInfoCache(config, repoInfoCache);
+            }
+            assertEquals(config.getRepos().size(), repoInfoCache.getElements().size());
         }
-        refreshRepoListsCache(config);
-        assertEquals(config.getRepos().size(), cache.getElements().size());
+        {
+            RepoListCache repoListCache = ButlerCache.getRepoListCache();
+            if (repoListCache.getElements().size() != config.getRepos().size()) {
+                refreshRepoListCache(config, repoListCache);
+            }
+            assertEquals(config.getRepos().size(), repoListCache.getElements().size());
+        }
+        butlerCache.save();
     }
 
-    private void refreshReposCache(Configuration config, RepoInfoCache cache) {
+    private void refreshRepoInfoCache(Configuration config, RepoInfoCache repoInfoCache) {
         for (BorgRepoConfig repo : config.getRepos()) {
-            log.info("Processing repo '" + repo + "'");
+            log.info("Processing repo info '" + repo + "'");
             RepoInfo repoInfo = BorgCommands.info(repo);
-            cache.upsert(repoInfo);
-            repoInfo = cache.get(repoInfo.getRepository().getId());
+            repoInfoCache.upsert(repoInfo);
+            repoInfo = repoInfoCache.get(repoInfo.getRepository().getId());
             assertNotNull(repoInfo);
         }
-        cache.save();
     }
 
-    private void refreshRepoListsCache(Configuration config) {
+    private void refreshRepoListCache(Configuration config, RepoListCache repoListCache) {
         for (BorgRepoConfig repo : config.getRepos()) {
-            log.info("Processing repo '" + repo + "'");
+            log.info("Processing repo list '" + repo + "'");
             RepoList repoList = BorgCommands.list(repo);
-            log.info("repoList: " + repoList);
+            repoListCache.upsert(repoList);
+            repoList = repoListCache.get(repoList.getRepository().getId());
+            assertNotNull(repoList);
         }
     }
 }

--
Gitblit v1.10.0