Solaar/tests/solaar/ui/test_common.py

29 lines
796 B
Python

from unittest import mock
from unittest.mock import PropertyMock
import pytest
from solaar.ui import common
@pytest.mark.parametrize(
"reason, expected_in_title, expected_in_text",
[
(
common.ErrorReason.PERMISSIONS,
"Permissions error",
"not have permission to open",
),
(common.ErrorReason.NO_DEVICE, "connect to device error", "error connecting"),
(common.ErrorReason.UNPAIR, "Unpairing failed", "receiver returned an error"),
],
)
def test_create_error_text(reason, expected_in_title, expected_in_text):
obj = mock.Mock()
obj.name = PropertyMock(return_value="test")
title, text = common._create_error_text(reason, obj)
assert expected_in_title in title
assert expected_in_text in text