"""Tests for messy-note bullet normalization.""" from app.generator.note_bullets import clean_and_clamp_bullets, explode_note_lines def test_explode_semicolon_dense_line() -> None: raw = ["roof slate slipped; gutters blocked; fascia rot NE"] out = explode_note_lines(raw) assert len(out) == 3 assert "gutters blocked" in out[1] def test_clamp_respects_high_limit() -> None: bullets = [f"note {i}" for i in range(150)] out = clean_and_clamp_bullets(bullets, max_items=120) assert len(out) == 120