diff --git a/tests/render_cases_layout.py b/tests/render_cases_layout.py index 8fe58dc25..1c7c97667 100644 --- a/tests/render_cases_layout.py +++ b/tests/render_cases_layout.py @@ -623,16 +623,18 @@ def ceiling(limit, approvals): UNANSWERED_CODE_PAGE = COLORED_CODE_PAGE.replace( "", "\n" ) -# What --syn-comment carried until this gate was written: 3.3:1 on --pre-bg, and the -# reading a user reported as the highlighting being gone. +# What --syn-comment carried until this gate was written: under 4.5:1 on --pre-bg, and +# the reading a user reported as the highlighting being gone. The colour is stated and +# the ratio is not, because the ratio is a reading of whatever --pre-bg currently is. FAINT_CODE_PAGE = COLORED_CODE_PAGE.replace( "", '\n' ) # A role that reads on the block and not on the tint one of its lines wears. The clean -# line comes first on purpose: a gate that stopped at a role's first span would take the -# 7.9:1 reading and never reach the 1.6:1 one two lines down, and a walkthrough's hi band -# is the surface where a code line is most often set on something other than --pre-bg. +# line comes first on purpose: a gate that stopped at a role's first span would take that +# line's reading, which clears the threshold, and never reach the one two lines down, and +# a walkthrough's hi band is the surface where a code line is most often set on something +# other than --pre-bg. TINTED_LINE_PAGE = LONG_PAGE.replace( "", "\n" ).replace( diff --git a/tests/test_render_gate.py b/tests/test_render_gate.py index a93ca08bc..8aa5300ba 100644 --- a/tests/test_render_gate.py +++ b/tests/test_render_gate.py @@ -1874,21 +1874,23 @@ def test_the_render_gate_reports_code_the_reader_cannot_tell_from_its_block( if f.startswith("[light] code marked cm is the ink of the code around it") ], unanswered + # The ratio the gate prints is a reading of the theme's own surfaces, so pinning + # its digits here makes every palette change a failure of this test rather than of + # the page. What the assertions ask instead is which role came back unread, which + # is the whole of what each case is arranged to distinguish: the gate names a role + # in this sentence only where it read under 4.5:1, so the finding is the claim. faint = render_gate_model.render_version(browser, serve(FAINT_CODE_PAGE)) - assert [ - f for f in faint if f.startswith("[light] code marked cm reads at 3.3:1") - ], faint + assert [f for f in faint if f.startswith("[light] code marked cm reads at ")], faint assert not [f for f in faint if "code marked st" in f], ( "only the role the style touched is unread, so the rest name the reading " "rather than the rule" ) tinted = render_gate_model.render_version(browser, serve(TINTED_LINE_PAGE)) - assert [ - f for f in tinted if f.startswith("[light] code marked st reads at 1.6:1") - ], ( + assert [f for f in tinted if f.startswith("[light] code marked st reads at ")], ( "the reading is of the surface each span is actually set on, not of one " - f"block colour taken once per role — {tinted}" + "block colour taken once per role — that role clears the threshold on the " + f"block, so a gate stopping at its clean line says nothing at all: {tinted}" ) page, errors = open_page(browser, serve(SHADOW_CODE_PAGE))