from fasthtml.common import to_xmlimport redef _get_toggle_classes(html):"""Extract class attribute from the toggle input element.""" m = re.search(r'id="sd-align-auto-nav-toggle"[^>]*class="([^"]*)"', html)return m.group(1) if m else""# Test enabled toggle — green background, checkedhtml = to_xml(render_align_auto_navigate_toggle(enabled=True))assert' checked'in htmlassert'sd-align-auto-nav-toggle'in htmlassert'setAlignAutoNavigate'in htmlassert'hx-post'notin html # No server persistencetoggle_cls = _get_toggle_classes(html)assert'bg-success'in toggle_clsassert'bg-error'notin toggle_cls# Test disabled state — red background, no checkedhtml_off = to_xml(render_align_auto_navigate_toggle(enabled=False))assert' checked'notin html_offtoggle_cls_off = _get_toggle_classes(html_off)assert'bg-error'in toggle_cls_offassert'bg-success'notin toggle_cls_off# Test container with OOBhtml_oob = to_xml(render_align_audio_controls(auto_navigate=True, oob=True))assert'hx-swap-oob'in html_oobassert'sd-align-audio-controls'in html_oob# Test color JS is in onchange (classList swap logic)assert'classList.remove'in htmlassert'classList.add'in htmlprint('Alignment audio controls tests passed')