test handling of command exec errors
This adds a test for common command exec errors when checking out repositories. The test checks if the correct error is thrown (CommandExecError) instead of failing silently or with an unspecific exception. Signed-off-by: Felix Moessbauer <felix.moessbauer@siemens.com> Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
This commit is contained in:
parent
ac43730889
commit
d2ecff4243
@ -26,7 +26,9 @@ import pathlib
|
|||||||
import shutil
|
import shutil
|
||||||
import json
|
import json
|
||||||
import yaml
|
import yaml
|
||||||
|
import pytest
|
||||||
from kas import kas
|
from kas import kas
|
||||||
|
from kas.kasusererror import CommandExecError
|
||||||
|
|
||||||
|
|
||||||
def test_for_all_repos(changedir, tmpdir):
|
def test_for_all_repos(changedir, tmpdir):
|
||||||
@ -61,6 +63,14 @@ def test_checkout(changedir, tmpdir):
|
|||||||
assert not os.path.exists('build/sstate-cache')
|
assert not os.path.exists('build/sstate-cache')
|
||||||
|
|
||||||
|
|
||||||
|
def test_invalid_checkout(changedir, tmpdir, capsys):
|
||||||
|
tdir = str(tmpdir / 'test_commands')
|
||||||
|
shutil.copytree('tests/test_commands', tdir)
|
||||||
|
os.chdir(tdir)
|
||||||
|
with pytest.raises(CommandExecError):
|
||||||
|
kas.kas(['checkout', 'test-invalid.yml'])
|
||||||
|
|
||||||
|
|
||||||
def test_checkout_create_refs(changedir, tmpdir):
|
def test_checkout_create_refs(changedir, tmpdir):
|
||||||
tdir = str(tmpdir / 'test_commands')
|
tdir = str(tmpdir / 'test_commands')
|
||||||
repo_cache = pathlib.Path(str(tmpdir.mkdir('repos')))
|
repo_cache = pathlib.Path(str(tmpdir.mkdir('repos')))
|
||||||
|
7
tests/test_commands/test-invalid.yml
Normal file
7
tests/test_commands/test-invalid.yml
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
header:
|
||||||
|
version: 8
|
||||||
|
|
||||||
|
repos:
|
||||||
|
kas_invalid:
|
||||||
|
url: https://example.com/kas.git
|
||||||
|
refspec: this-ref-is-invalid
|
Loading…
Reference in New Issue
Block a user