diff --git a/cellxgene_gateway/prune_process_cache.py b/cellxgene_gateway/prune_process_cache.py index d4b2f2e..29eafb4 100644 --- a/cellxgene_gateway/prune_process_cache.py +++ b/cellxgene_gateway/prune_process_cache.py @@ -39,9 +39,9 @@ class PruneProcessCache: for process in processes_to_delete: try: - logger.info(f"pruning process {process.pid} ({process.key.dataset})") + logger.info(f"pruning process {process.pid} ({process.key.descriptor})") self.cache.prune(process) except Exception: logger.exception( - "failed to prune process {process.pid} ({process.dataset})" + "failed to prune process {process.pid} ({process.key.descriptor})" ) diff --git a/tests/test_prune_process_cache.py b/tests/test_prune_process_cache.py index 3609e3a..b500007 100644 --- a/tests/test_prune_process_cache.py +++ b/tests/test_prune_process_cache.py @@ -1,8 +1,16 @@ import unittest -from unittest.mock import MagicMock, patch +from unittest.mock import patch, seal from cellxgene_gateway.backend_cache import BackendCache -from cellxgene_gateway.cache_entry import CacheEntry +from cellxgene_gateway.cache_key import CacheKey +from cellxgene_gateway.items.file.fileitem import FileItem +from cellxgene_gateway.items.file.fileitem_source import FileItemSource +from cellxgene_gateway.items.item import ItemType + +key = CacheKey( + FileItem("/czi/", name="pbmc3k.h5ad", type=ItemType.h5ad), + FileItemSource("/tmp", "local"), +) class TestPruneProcessCache(unittest.TestCase): @@ -15,14 +23,23 @@ class TestPruneProcessCache(unittest.TestCase): cache = BackendCache() old.timestamp = -100 + old.foo = 12 + old.pid = 1 + old.key = key + old.terminate.return_value = None + seal(old) + new.key = key cache.entry_list.append(old) new.timestamp = -5 + seal(new) cache.entry_list.append(new) self.assertEqual(len(cache.entry_list), 2) ppc = PruneProcessCache(cache) ppc.prune() self.assertEqual(len(cache.entry_list), 1) self.assertEqual(cache.entry_list[0], new) + self.assertEqual(cache.entry_list[0], new) + self.assertTrue(old.terminate.called) if __name__ == "__main__":