diff options
| author | Justin M. Keyes <justinkz@gmail.com> | 2026-07-05 12:08:41 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-07-05 12:08:41 -0400 |
| commit | e494c4777b84f5b1f275c192b52d51b625233e87 (patch) | |
| tree | 2a2283798864ed9fcdcae27998aaa955c8887932 /test/functional/vimscript/executable_spec.lua | |
| parent | a0fd59352a93099fc48270e3a34ad77175ffb947 (diff) | |
| download | rneovim-e494c4777b84f5b1f275c192b52d51b625233e87.tar.gz rneovim-e494c4777b84f5b1f275c192b52d51b625233e87.tar.bz2 rneovim-e494c4777b84f5b1f275c192b52d51b625233e87.zip | |
fix(test): screen:expect() render crash masks the real failure #40593
Problem:
When screen:expect() fails, it renders a snapshot for the error
message. If the grid references a highlight id that was never defined
via "hl_attr_define", the renderer crashes:
screen.lua:1910: attempt to index local 'entry' (a nil value)
This hides the actual failure, and appears "flaky": it only fires on the
failure path, and only when the shared screen is missing an id the grid
still references. A screen created in setup() attaches mid-session, so
highlight ids allocated before it attached (still referenced by stale
grid cells) are never sent to it.
Solution:
- Don't crash while rendering a diagnostic: show undefined highlight ids
as "UNKNOWN_HL_ID(n)", so the real failure and the desync are legible.
- put_spec: fix `visualbell` typo. If it fails again then we can find
the actual root cause.
ref https://github.com/neovim/neovim/issues/36250
Diffstat (limited to 'test/functional/vimscript/executable_spec.lua')
0 files changed, 0 insertions, 0 deletions