Files
dvc/tests/unit/test_run.py
T
Saugat Pachhai 99b58d3d05 refactor/test multistage load for params and outputs (#3949)
* refactor multistage load for params and outputs

* tests: load params

* tests: output loading from pipeline file

* fix test

* fix typo in name

* split params load

* rename params func s/inject_values/fill_values

* fix tests

* simplify loads_params and output.load_from_pipeline

* address @pared's suggestions for tests
2020-06-04 23:35:07 +03:00

37 lines
857 B
Python

import pytest
from dvc.repo.run import is_valid_name, parse_params
def test_parse_params():
assert parse_params(
[
"param1",
"file1:param1,param2",
"file2:param2",
"file1:param2,param3,",
"param1,param2",
"param3,",
"file3:",
]
) == [
"param1",
{"file1": ["param1", "param2"]},
{"file2": ["param2"]},
{"file1": ["param2", "param3"]},
"param1",
"param2",
"param3",
{"file3": []},
]
@pytest.mark.parametrize("name", ["copy_name", "copy-name", "copyName", "12"])
def test_valid_stage_names(name):
assert is_valid_name(name)
@pytest.mark.parametrize("name", ["copy$name", "copy-name?", "copy-name@v1"])
def test_invalid_stage_names(name):
assert not is_valid_name(name)