mirror of
https://github.com/tiqi-group/pydase.git
synced 2025-06-03 20:30:40 +02:00
tests: adding component tests (NumberSlider)
This commit is contained in:
parent
c138dc405f
commit
b8706f661b
0
tests/components/__init__.py
Normal file
0
tests/components/__init__.py
Normal file
60
tests/components/test_number_slider.py
Normal file
60
tests/components/test_number_slider.py
Normal file
@ -0,0 +1,60 @@
|
||||
from pytest import CaptureFixture, LogCaptureFixture
|
||||
|
||||
from pydase.components.number_slider import NumberSlider
|
||||
from pydase.data_service.data_service import DataService
|
||||
|
||||
from .. import caplog # noqa
|
||||
|
||||
|
||||
def test_NumberSlider(capsys: CaptureFixture) -> None:
|
||||
class ServiceClass(DataService):
|
||||
number_slider = NumberSlider(1, 0, 10, 1)
|
||||
int_number_slider = NumberSlider(1, 0, 10, 1, "int")
|
||||
|
||||
service = ServiceClass()
|
||||
|
||||
assert service.number_slider.value == 1
|
||||
assert isinstance(service.number_slider.value, float)
|
||||
assert service.number_slider.min == 0
|
||||
assert isinstance(service.number_slider.min, float)
|
||||
assert service.number_slider.max == 10
|
||||
assert isinstance(service.number_slider.max, float)
|
||||
assert service.number_slider.step_size == 1
|
||||
assert isinstance(service.number_slider.step_size, float)
|
||||
|
||||
assert service.int_number_slider.value == 1
|
||||
assert isinstance(service.int_number_slider.value, int)
|
||||
assert service.int_number_slider.step_size == 1
|
||||
assert isinstance(service.int_number_slider.step_size, int)
|
||||
|
||||
service.number_slider.value = 10.0
|
||||
service.int_number_slider.value = 10.1
|
||||
|
||||
captured = capsys.readouterr()
|
||||
|
||||
expected_output = sorted(
|
||||
[
|
||||
"ServiceClass.number_slider.value = 10.0",
|
||||
"ServiceClass.int_number_slider.value = 10",
|
||||
]
|
||||
)
|
||||
actual_output = sorted(captured.out.strip().split("\n")) # type: ignore
|
||||
assert actual_output == expected_output
|
||||
|
||||
service.number_slider.min = 1.1
|
||||
|
||||
captured = capsys.readouterr()
|
||||
|
||||
expected_output = sorted(
|
||||
[
|
||||
"ServiceClass.number_slider.min = 1.1",
|
||||
]
|
||||
)
|
||||
actual_output = sorted(captured.out.strip().split("\n")) # type: ignore
|
||||
assert actual_output == expected_output
|
||||
|
||||
|
||||
def test_init_error(caplog: LogCaptureFixture) -> None: # noqa
|
||||
number_slider = NumberSlider(type="str") # type: ignore # noqa
|
||||
|
||||
assert "Unknown type 'str'. Using 'float'" in caplog.text
|
Loading…
x
Reference in New Issue
Block a user