Matthew Martin
a9ce931439
Default possibly unset variables to empty
2017-11-04 20:26:07 -05:00
Matthew Martin
a33c72e838
tests: Use idiomatic set check
2017-11-02 20:08:28 -05:00
Daniel Shahaf
5efd062a4d
tests: Add a regression test for issue #392 (aliases beginning with a '+' are lost).
2016-12-03 13:54:47 +00:00
Daniel Shahaf
67be62107b
tests: Move some code in preparation for next commit. No functional change.
2016-12-03 13:54:47 +00:00
Daniel Shahaf
2b303f01b6
dev tools: Automagically handle newlines (\n) in $BUFFER.
2016-09-27 22:55:16 +00:00
Daniel Shahaf
a2876fb57d
dev tools: Add a TODO to introduce code reuse.
2016-09-25 11:38:54 +00:00
Daniel Shahaf
a053768627
dev tools: Remove a superfluous empty line.
2016-09-25 08:11:01 +00:00
Daniel Shahaf
5627fd2045
dev tools: Stage the copyright block to make diffs smaller.
2016-09-24 17:07:01 +00:00
Daniel Shahaf
987c133486
dev tools: Tolerate invalid input.
2016-09-24 17:06:21 +00:00
Daniel Shahaf
e15a09840e
dev tools: Automate a recurring step: Set year correctly for new tests.
2016-09-23 06:37:28 +00:00
Daniel Shahaf
e2f863c151
minor: Fix typo in development usage message.
2016-08-12 09:19:36 +00:00
Daniel Shahaf
add6825898
dev tools: Extend tests/generate.zsh.
2016-07-29 19:02:40 +00:00
Daniel Shahaf
8013dc3b8d
dev tools: Add a script that generates a test-data file.
2016-07-29 18:58:37 +00:00
Daniel Shahaf
fccf92402b
minor: tests: Formatting tweak to XPASS output.
...
Remove superfluous single quotes around the second hyphen.
2016-06-03 03:57:45 +00:00
Matthew Martin
d37c55c788
minor: tests: Add comment for NONE in expected_region_highlight
2016-05-12 22:59:06 -05:00
Matthew Martin
364f206a54
docs: Give example of test that modifies its environment
2016-05-12 22:48:07 -05:00
Matthew Martin
19acd8e844
docs: Mention $BUFFER
2016-05-12 22:48:03 -05:00
Matthew Martin
13018f3dd7
docs: Document use of NONE in expected_region_highlight
2016-05-12 22:47:55 -05:00
Matthew Martin
1082067f93
tests: Fail on stderr output
...
Closes #291 .
2016-05-12 22:32:34 -05:00
Daniel Shahaf
f0bae44b76
tests: Followup to last: echo(1) is evil.
...
Use 'print -r --' instead, so literal backslashes in $BUFFER aren't expanded.
Found-by: Matthew Martin
2016-05-05 20:34:43 +00:00
Daniel Shahaf
3176b9567c
minor: tests: Quote $BUFFER differently on output.
...
The new output improves readability of the 'main' highlighter's test output.
2016-05-05 19:33:56 +00:00
Daniel Shahaf
6aa57d60aa
tests: TAP support: Emit a 'description' for all test points
2016-05-05 19:11:49 +00:00
Daniel Shahaf
f83bca0847
minor: tests: Introduce a local variable. No functional change.
2016-05-05 19:11:28 +00:00
Daniel Shahaf
70b5687d66
minor: tests: Tighten up local variable scope.
2016-05-05 19:11:07 +00:00
Daniel Shahaf
21207c336a
tests: TAP compliance: Do not emit literal '#' in the 'description' part
2016-05-05 19:11:07 +00:00
Daniel Shahaf
56a867076c
tests: Followup to fd061b5730
: quote both expected and actual output.
2016-05-05 19:10:06 +00:00
Matthew Martin
eaa4335c34
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.
2016-05-05 12:31:52 -05:00
Matthew Martin
d3678ec7a8
tests: Remove unused_highlight
2016-05-05 12:28:43 -05:00
Matthew Martin
fd061b5730
tests: Test ZSH_HIGHLIGHT_STYLES keys directly
...
Closes #287 . Testing the keys directly removes the need for
unused_highlight which will be removed next.
2016-05-05 12:28:39 -05:00
Matthew Martin
4da9889d15
tests: Use 'NONE' to denote no highlighting
...
'none' is a valid highlighting type. Since by convention styles are all
lowercase, 'NONE' shouldn't conflict with anything.
Closes #289 .
2016-04-30 12:48:44 -05:00
Daniel Shahaf
f34714b8ee
Bump copyright years.
2016-04-30 02:11:17 +00:00
Matthew Martin
a830613467
tests: Specify the style key instead of the style itself
2016-04-29 09:51:13 -05:00
Matthew Martin
31ac2b36a9
tests: Quote style in expected_region_highlight
2016-04-02 09:45:24 -05:00
Matthew Martin
bb8d325c0c
tests: Fix grep syntax
...
In basic regular expressions | is not a special character that spearates
branches, so use an extended regular expression.
2016-04-01 00:52:27 -05:00
Daniel Shahaf
30d8f92df2
test harness: Properly quote error message interpolations.
...
No functional change, except that error messages are now more readable.
2016-01-20 22:02:25 +00:00
Daniel Shahaf
9b64ad750f
tests: Add a 'print failures only' mode to 'make test', called 'make quiet-test'.
...
Fixes zsh-users/zsh-syntax-highlighting#262 .
Currently, 'make quiet-test' uses Perl. However, since it is considered a development
tool rather than a user-facing tool, users and downstream packages needn't install Perl.
Furthermore, even this dev-only dependency may be dropped in the future.
The only difference between tests/tap-filter here and the one in the issue is using
a `cat` subshell v. using 'undef $/; <STDIN>'.
2016-01-02 21:22:01 +00:00
Daniel Shahaf
936e2e9314
tests: Add another comment. No functional change.
2016-01-02 20:52:40 +00:00
Daniel Shahaf
268656d52b
tests: Add a comment. No functional change.
2016-01-01 16:35:00 +00:00
Daniel Shahaf
b989ae23d0
docs copyedit: Rewrap to 80 columns, part 3.
2015-11-24 06:06:16 +00:00
Daniel Shahaf
3f163a2fd4
docs copyedit: Rewrap to 80 columns, part 2.
2015-11-24 06:06:16 +00:00
Daniel Shahaf
9ce97cd64d
docs copyedit: minor.
2015-11-24 06:06:16 +00:00
Daniel Shahaf
49f7beecb5
docs copyedit: Review toplevel and tests README.md files.
2015-11-24 06:06:16 +00:00
Daniel Shahaf
6c033e62e9
docs copyedit: Whitespace.
2015-11-24 06:06:16 +00:00
Daniel Shahaf
e60737d320
'make perf': Unbreak by porting over 'make test' harness changes.
...
In particular, tests were relying on the harness to provide a sandbox working
directory, but the perf harness wasn't providing that.
2015-11-18 17:52:46 +00:00
Daniel Shahaf
1397f1bae1
tests: Tweak the isolation wrapper for style and robustness.
...
Followup to c015339202
.
Suggested-by: Matthew Martin
2015-11-17 01:06:50 +00:00
Daniel Shahaf
c015339202
tests: Provide an independent, auto-cleaned working directory to each test.
...
Fixes zsh-users/zsh-syntax-highlighting#182.
Prerequisite for testing issue #228 .
* tests/test-highlighting.zsh
(run_test): Move functionality to run_test_internal; make run_test be a wrapper
that handles creating and cleaning up the tempdir.
* tests/README.md: Document the new feature.
* "highlighters/main/test-data/path-space- .zsh"
* highlighters/main/test-data/path-tilde-named.zsh
* highlighters/main/test-data/path.zsh
Change test data to not depend on being run from the source directory.
2015-11-16 22:54:52 +00:00
Daniel Shahaf
b5d02a2f49
tests: Document test isolation, implemented some time ago.
2015-11-16 22:31:18 +00:00
Daniel Shahaf
6fe07c0961
'make test': Fix breakage introduced by 4d3da30f8b
:
...
test failure would not be reflected by the exit code of 'make'.
Setting a shell parameter in the left-hand side of a pipe is not visible to
commands after the pipe, because the left-hand side forks. (That's true both
in 'sh' used by 'make' and in 'zsh' that runs tests/test-highlighting.zsh, at
least on my system.) Therefore, move the colorizing hook to where it doesn't
interfere with setting the $something_failed (in tests/test-highlighting.zsh)
and $result (in Makefile) parameters.
2015-10-27 11:59:20 +02:00
Daniel Shahaf
4513eaea71
'make perf': New target.
2015-10-27 09:47:09 +02:00
Daniel Shahaf
4d3da30f8b
'make test': Colorize output.
...
Color is only added when "make test"'s stdout is a tty.
2015-10-26 14:31:21 +00:00
Daniel Shahaf
663c760cc9
minor: test harness: Convert some global failure modes to TAP "Bail out" mode.
2015-10-23 05:34:15 +00:00
Daniel Shahaf
8b8b19d91f
test harness: Fix a bug with empty actual or expected results.
...
Fixes zsh-users/zsh-syntax-highlighting#217 .
2015-10-23 04:48:16 +00:00
Daniel Shahaf
c4a9fe9379
test harness: Exit 1 if a 'todo' test passed.
2015-10-23 04:30:00 +00:00
Daniel Shahaf
11c060ab76
test harness: Fix a bug whereby 'todo' state would propagate to all subsequent test points.
...
Update expectations on the subshell test (which triggered this bug, since it has
a passing test point following a 'todo' test point).
2015-10-23 04:26:51 +00:00
Matthew Martin
d99aa58aaa
test harness: Run each test as a single subshell.
...
That allows tests to be completely independent of each other, so tests that
change global state — such as modify environment variables, define functions or
aliases, or hash commands — will not affect other tests, without needing an
explicit cleanup step.
This enables testing path-tilde-home with and without $HOME set, which is part
of issue #216 .
While at it, convert the test harness to TAP. This fixes issue #180 by adding
support for "not ok 42 # TODO" output.
This commit assumes that 'grep' supports POSIX-compliant -q and -v flags.
Patch-by: Matthew Martin <phy1729@gmail.com>
2015-10-23 03:31:00 +00:00
Daniel Shahaf
9e80fe8f02
Bump copyright years.
2015-09-24 16:46:28 +00:00
Daniel Shahaf
aab1b8f50f
Follow-up to 547b8be304
: Fix $observed_result calculation.
...
In region_highlight, a spec of the form 'i j foo' with i >= j should have no effect.
Before this commit, however, the {$i..$j} range would happily expand to (5 4 3)
if i > j were the case (e.g., i=5 and j=3).
This breaks vanilla-newline.zsh; the next commit will fix that.
2015-09-17 23:40:20 +00:00
Daniel Shahaf
4068413dfe
tests: Let each test change the highlight styles.
...
This way, each test can set custom styles to specific highlight contexts
(to differentiate those contexts) without affecting later tests.
2015-09-17 23:35:44 +00:00
Daniel Shahaf
05ab9f7342
tests: Run only *.zsh files.
...
Otherwise, *.rej patch files would be run by zsh, with unpredictable results.
2015-09-17 20:11:05 +00:00
Daniel Shahaf
c46b8d169e
test harness: Fix off-by-one discrepancy between observed and expected.
...
Fixes issue #195 .
2015-09-12 20:48:25 +00:00
Daniel Shahaf
13a8db1d71
tests: exit non-zero upon failure
2015-09-05 09:27:51 +00:00
Daniel Shahaf
667495bfb7
Support multiline strings
2015-01-27 10:23:58 +00:00
Julien Nicoulaud
ef4f5ed638
Fix READMEs
2011-06-12 23:16:41 +02:00
Julien Nicoulaud
0772ddd346
Big refactoring.
...
* Don't override user defined styles
* Better modularisation of highlighters
* Allow to define which highlighters are activated
* Allow to define the order in which they are defined
* Minor performance optimizations
* Fixed some variables leak
* Improve documentation
* Brackets highlighter: use ZSH_HIGHLIGHT_STYLES instead of a specific array
2011-06-12 22:57:14 +02:00
Julien Nicoulaud
ea792cbf87
Add a mechanism for testing the correctness of the highlighting.
...
Feel free to add more test data !
Signed-off-by: Julien Nicoulaud <julien.nicoulaud@gmail.com>
2011-01-10 23:46:27 +01:00
Julien Nicoulaud
f962bdf1e7
Fix regression
2011-01-06 23:28:41 +01:00
Julien Nicoulaud
0b0b09de64
Fix absolute path in symlink
2011-01-06 23:26:24 +01:00
Julien Nicoulaud
9d63573e4e
Issue 30: Add a test script to watch performance
2011-01-06 23:23:29 +01:00