From f76c111b7d8544d52d317442569500d8f4018643 Mon Sep 17 00:00:00 2001 From: Paul McCarthy <pauldmccarthy@gmail.com> Date: Mon, 23 Oct 2017 12:11:01 +0100 Subject: [PATCH] Don't kill memory in CI tests --- tests/test_atlases_query.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/tests/test_atlases_query.py b/tests/test_atlases_query.py index 449a4f25f..7b61bb36a 100644 --- a/tests/test_atlases_query.py +++ b/tests/test_atlases_query.py @@ -15,6 +15,7 @@ import pytest import fsl.data.atlases as fslatlases import fsl.data.image as fslimage import fsl.utils.transform as transform +import fsl.utils.cache as cache from . import (testdir, make_random_mask) @@ -33,15 +34,18 @@ def _repeat(iterator, n): yield elem -# atype: (label|prob) -_atlases = {} +# We can't cache all atlases, because CI +# jobs will take up too much memory and +# be killed +_atlases = cache.Cache(3) def _get_atlas(atlasID, res, summary=False): - atlas = _atlases.get((atlasID, res, summary)) + atlas = _atlases.get((atlasID, res, summary), default=None) if atlas is None: atlas = fslatlases.loadAtlas(atlasID, loadSummary=summary, resolution=res) - _atlases[atlasID, res, summary] = atlas + _atlases.put((atlasID, res, summary), atlas) + return atlas def _random_atlas(atype, res, summary=False): -- GitLab