Files
dvc/tests/func/test_feature_flags.py
T

30 lines
961 B
Python

from dvc.dvcfile import Dvcfile
from dvc.stage.loader import StageLoader
from dvc.utils.serialize import dumps_yaml
from tests.unit.test_stage_resolver import (
RESOLVED_DVC_YAML_DATA,
TEMPLATED_DVC_YAML_DATA,
)
def test_parametrization_is_not_enabled_by_default(tmp_dir, dvc, mocker):
assert dvc.config["feature"]["parametrization"] is False
(tmp_dir / "dvc.yaml").write_text(dumps_yaml(RESOLVED_DVC_YAML_DATA))
mock = mocker.patch("dvc.stage.loader.DataResolver")
stages = list(Dvcfile(dvc, "dvc.yaml").stages)
mock.assert_not_called()
assert len(stages) == 2
def test_parametrization_flag_when_enabled(tmp_dir, dvc, mocker):
dvc.config["feature"]["parametrization"] = True
dvcfile = Dvcfile(dvc, "dvc.yaml")
loader = StageLoader(dvcfile, TEMPLATED_DVC_YAML_DATA, lockfile_data=None)
loader.resolved_data = RESOLVED_DVC_YAML_DATA["stages"]
stages = list(loader.values())
assert len(stages) == 2