1
0
mirror of https://github.com/bec-project/bec_widgets.git synced 2026-03-04 16:02:51 +01:00
Files
bec_widgets/tests/unit_tests/test_screen_utils.py

39 lines
1.1 KiB
Python

from qtpy.QtCore import QRect
from qtpy.QtWidgets import QWidget
from bec_widgets.utils.screen_utils import (
apply_centered_size,
centered_geometry,
main_app_size_for_screen,
)
def test_centered_geometry_returns_expected_tuple():
available = QRect(100, 50, 800, 600)
result = centered_geometry(available, 400, 300)
assert result == (300, 200, 400, 300)
def test_main_app_size_for_screen_respects_16_9_and_screen_caps():
available = QRect(0, 0, 1920, 1080)
width, height = main_app_size_for_screen(available)
assert (width, height) == (1728, 972)
narrow = QRect(0, 0, 1000, 800)
width, height = main_app_size_for_screen(narrow)
assert (width, height) == (900, 506)
def test_apply_centered_size_uses_provided_geometry(qtbot):
widget = QWidget()
qtbot.addWidget(widget)
available = QRect(10, 20, 600, 400)
apply_centered_size(widget, 200, 100, available=available)
geometry = widget.geometry()
assert geometry.x() == 210
assert geometry.y() == 170
assert geometry.width() == 200
assert geometry.height() == 100