0d147408e678df6e37e2a7e0a24934b80d0826e4 braney Wed Sep 30 06:51:55 2026 -0700 docent rm38279: follow the window-size density note to its new wording, "window too large, zoom in", from 32eec44ad31. The nightly went red at step 2 on the old string. Steps 1 and 2 now check the new string, and the header no longer describes the prefix overlap that the reword removed. refs #38279, #38252 diff --git src/hg/utils/docent/tests/regress/rm38279.docent.yaml src/hg/utils/docent/tests/regress/rm38279.docent.yaml index 85279c82b23..2c9d43c8443 100644 --- src/hg/utils/docent/tests/regress/rm38279.docent.yaml +++ src/hg/utils/docent/tests/regress/rm38279.docent.yaml @@ -1,109 +1,107 @@ # #38279 -- a track that switched to a density graph did not say why. # # Three different things put a bigBed, VCF or BAM track into density mode, and the display # looked the same whichever one did it: the user ticking "Display data as a density graph" # on the configuration page, the window being wider than the track's maxWindowCoverage, or # the track having more features in the window than it is willing to read. The two label # functions for this already existed but were reachable only through # labelTrackAsFilteredNumber(), whose callers all guard it with `if (filtered)`, so none of # the three automatic cases said anything at all. # # d83026b7d89 adds labelTrackAsDensityIfActive(), called once from makeActiveImage() after # every path into density mode has been settled, with one message per cause: # # the user asked for it (density graph: turn off on the track settings page) # too many items (density graph: too many items, zoom in or use dense) -# window too wide (density graph: too many items, zoom in) +# window too wide (density graph: window too large, zoom in) # # 07f0635fd35 reworded all three on 2026-09-18 after QA read them: say "density graph" to -# match the checkbox, and name only the escape that works for each cause. The wording -# above is that second wording, and the note below about the shared prefix is a direct -# consequence of it. +# match the checkbox, and name only the escape that works for each cause. 32eec44ad31 +# reworded the window-size one again on 2026-09-29: winTooBigDoWiggle() compares the window +# width against maxWindowCoverage and never counts anything, so "too many items" named the +# wrong cause. The wording above is the current one. # # Each step names the message it expects AND the message it must not get, because the whole # of the fix is picking the right one of the three. A version that appended the same # sentence to every density track would pass a test that only asked whether a note is there. # -# Since the reword, the window-size message is a strict PREFIX of the too-many-items one: -# -# density graph: too many items, zoom in -# density graph: too many items, zoom in or use dense -# -# mouseoverText*= is a substring match, so a bare `noHas` on the shorter one matches the -# longer one too and fails on the very track it is meant to pass. labelAddNote() wraps a -# note as " (%s)", so every check below carries the closing paren, which makes the shorter -# message match itself and nothing else. Do not drop it. +# labelAddNote() wraps a note as " (%s)", and every check below carries the parens. Between +# the two rewordings the window-size message was a strict prefix of the too-many-items one, +# and the closing paren was what kept a substring match on the shorter one from matching the +# longer one. The current three share no such prefix, but keep the parens: the next reword +# can bring the trap back. # # Where the note can be read, and where it cannot # ----------------------------------------------- # The note is appended to the track's longLabel, which reaches three places: the center # label drawn INSIDE the track image, the hgTracks JSON in a