Files
dvc/tests/func/test_lock.py
T
Saugat Pachhai (सौगात) f5baf990cf cli: refactor into a module
By splitting dvc.cli into a module, we'll be able to share cli-related
utilities, split parser-related stuffs into smaller parts, improve
reusability and improve API for command extensions in the future.
2022-01-19 12:22:07 +02:00

30 lines
913 B
Python

import pytest
from dvc.cli import main
from dvc.lock import Lock, LockError
def test_with(tmp_dir, dvc, mocker):
# patching to speedup tests
mocker.patch("dvc.lock.DEFAULT_TIMEOUT", 0.01)
lockfile = tmp_dir / dvc.tmp_dir / "lock"
with Lock(lockfile):
with pytest.raises(LockError), Lock(lockfile):
pass
def test_cli(tmp_dir, dvc, mocker, caplog):
# patching to speedup tests
mocker.patch("dvc.lock.DEFAULT_TIMEOUT", 0.01)
expected_error_msg = (
"Unable to acquire lock. Most likely another DVC process is "
"running or was terminated abruptly. Check the page "
"<https://dvc.org/doc/user-guide/troubleshooting#lock-issue> "
"for other possible reasons and to learn how to resolve this."
)
with Lock(tmp_dir / dvc.tmp_dir / "lock"):
assert main(["add", "foo"]) == 1
assert expected_error_msg in caplog.text