def test_decoder_cache_invalidation(tmpdir): cache_dir = str(tmpdir) solver_mock = SolverMock() # Basic test, that results are cached. cache = DecoderCache(cache_dir=cache_dir) cache.wrap_solver(solver_mock)(**get_solver_test_args()) assert SolverMock.n_calls[solver_mock] == 1 cache.invalidate() cache.wrap_solver(solver_mock)(**get_solver_test_args()) assert SolverMock.n_calls[solver_mock] == 2
def test_decoder_cache_invalidation(tmpdir): cache_dir = str(tmpdir) solver_mock = SolverMock() M = 100 N = 10 D = 2 activities = np.ones((M, D)) targets = np.ones((M, N)) rng = np.random.RandomState(42) # Basic test, that results are cached. cache = DecoderCache(cache_dir=cache_dir) cache.wrap_solver(solver_mock)(activities, targets, rng) assert SolverMock.n_calls[solver_mock] == 1 cache.invalidate() cache.wrap_solver(solver_mock)(activities, targets, rng) assert SolverMock.n_calls[solver_mock] == 2