ahriman/tests/ahriman/models/test_upload_settings.py
Evgeniy Alekseev 449b8a2033 add models tests (#1)
also replace single quote to double one to confort PEP docstring
+ move _check_output to class properties to make it available for
mocking
2021-03-22 02:30:26 +03:00

24 lines
702 B
Python

import pytest
from ahriman.core.exceptions import InvalidOption
from ahriman.models.upload_settings import UploadSettings
def test_from_option_invalid() -> None:
"""
must raise exception on invalid option
"""
with pytest.raises(InvalidOption, match=".* `invalid`$"):
UploadSettings.from_option("invalid")
def test_from_option_valid() -> None:
"""
must return value from valid options
"""
assert UploadSettings.from_option("rsync") == UploadSettings.Rsync
assert UploadSettings.from_option("RSYNC") == UploadSettings.Rsync
assert UploadSettings.from_option("s3") == UploadSettings.S3
assert UploadSettings.from_option("S3") == UploadSettings.S3