tests: Set ZSH_HIGHLIGHT_STYLES=() during tests

Since the _zsh_highlight_add_highlight that the tests use ignores
ZSH_HIGHLIGHT_STYLES, we can test both an injective mapping and an empty
mapping at once.
This commit is contained in:
Matthew Martin
2016-04-24 23:22:14 -05:00
parent d3678ec7a8
commit eaa4335c34
7 changed files with 36 additions and 1 deletions

View File

@@ -6,7 +6,7 @@ core driver (`zsh-syntax-highlighting.zsh`), on the highlighters in the
distribution, and on the test suite. It does not target third-party
highlighter authors (although they may find it an interesting read).
The 'main' highlighter
The `main` highlighter
----------------------
The following function `pz` is useful when working on the `main` highlighting:
@@ -25,6 +25,25 @@ The following function `pz` is useful when working on the `main` highlighting:
It prints, for each argument, its token breakdown, similar to how the main
loop of the `main` highlighter sees it.
Testing the `brackets` highlighter
----------------------------------
Since the test harness empties `ZSH_HIGHLIGHT_STYLES` and the `brackets`
highlighter interrogates `ZSH_HIGHLIGHT_STYLES` to determine how to highlight,
tests must set the `bracket-level-#` keys themselves. For example:
ZSH_HIGHLIGHT_STYLES[bracket-level-1]=
ZSH_HIGHLIGHT_STYLES[bracket-level-2]=
BUFFER='echo ({x})'
expected_region_highlight=(
"6 6 bracket-level-1" # (
"7 7 bracket-level-2" # {
"9 9 bracket-level-2" # }
"10 10 bracket-level-1" # )
)
IRC channel
-----------