mirror of
https://github.com/Stone-Red-Code/dvc.git
synced 2026-11-02 07:18:25 +01:00
@@ -1,5 +1,7 @@
|
||||
import os
|
||||
|
||||
import pytest
|
||||
|
||||
|
||||
def test_stage_cache(tmp_dir, dvc, mocker):
|
||||
tmp_dir.gen("dep", "dep")
|
||||
@@ -204,3 +206,19 @@ def test_shared_stage_cache(tmp_dir, dvc, run_copy):
|
||||
assert _mode(parent_cache_dir) == dir_mode
|
||||
assert _mode(cache_dir) == dir_mode
|
||||
assert _mode(cache_file) == file_mode
|
||||
|
||||
|
||||
def test_always_changed(mocker):
|
||||
from dvc.repo import Repo
|
||||
from dvc.stage import Stage
|
||||
from dvc.stage.cache import RunCacheNotFoundError, StageCache
|
||||
|
||||
repo = mocker.Mock(spec=Repo)
|
||||
cache = StageCache(repo)
|
||||
stage = Stage(repo, always_changed=True)
|
||||
get_stage_hash = mocker.patch("dvc.stage.cache._get_stage_hash")
|
||||
assert cache.save(stage) is None
|
||||
assert get_stage_hash.not_called
|
||||
with pytest.raises(RunCacheNotFoundError):
|
||||
cache.restore(stage)
|
||||
assert get_stage_hash.not_called
|
||||
|
||||
Reference in New Issue
Block a user