Files
lintunes/tests/test_round62.py
T
travandClaude Opus 5.5 43d7b91aa6 v0.31.3: header row moves up beside the seek bar; knolled top row
The Library button, the view's header (search box or playlist name) and
the seek row now share one band under the transport boxes, instead of the
seek row hanging alone with a header strip below it. The now-playing panel
caps at 560px and the gaps between controls share the rest evenly; more
room under the menu bar. Long playlist names shrink up to 2pt, then elide.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 22:43:21 -07:00

28 lines
1.2 KiB
Python

"""Round 62: the bpm box lines up with the rest of the transport bar.
The boxed controls (transport, shuffle, visualizer, bpm) were centered on the
whole bar while the now-playing panel hung from its top, so the bpm box sat
~11px lower than the panel right beside it. Now the panel is CONTROL_HEIGHT
tall and every control shares its top edge; the seek row sits under the panel.
"""
from tests.test_round21 import _build_bar
from lintunes.gui.transport import CONTROL_HEIGHT
def test_every_control_shares_the_now_playing_row(qapp, tmp_path):
bar = _build_bar(qapp, tmp_path)
panel = bar._now_playing.geometry()
assert panel.height() == CONTROL_HEIGHT
for widget in (bar._prev_btn.parentWidget(), bar._shuffle_btn.parentWidget(),
bar._visualizer, bar._volume_slider,
bar._bpm_button.parentWidget()):
g = widget.geometry()
assert (g.top(), g.bottom()) == (panel.top(), panel.bottom())
def test_seek_row_hangs_under_the_panel(qapp, tmp_path):
bar = _build_bar(qapp, tmp_path)
slider_top = bar._slider.mapTo(bar, bar._slider.rect().topLeft()).y()
assert slider_top > bar._now_playing.geometry().bottom()