about summary refs log tree commit diff
path: root/Test
Commit message (Collapse)AuthorAgeFilesLines
...
* 46174/0001: test harness: Plug a symlink attackDaniel Shahaf2020-07-051-2/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | The test harness created tempfiles with a predictable names and sourced them without verifying they had been created by itself. This opened anyone who ran the test suite to a symlink attacks from other local users on the build machine. Fix this by creating the file whilst NO_CLOBBER and ERR_EXIT are both in scope, to ensure that we'll abort unless the file really was created as expected. Put the existing rm(1) call in a try/always block to help it be unlinked on test failures, thus reducing the chances of the NO_CLOBBER check triggering on tempfiles created by earlier test suite runs. I had first tried to fix this by using the . () { ... } =(:) . idiom, but couldn't get that to work: it broke the %prep code of X03 with ZTST_verbose unset (its default value) but not with ZTST_verbose=3. (I tried to set the latter to debug zpty_flush.) While there, add a needed-in-principle-but-noop-in-this-specific-case (q). Indentation will be restored in the next commit.
* 46168: Update $PWD and call chpwd hook after normalizing pathMatthew Martin2020-07-031-1/+18
|
* users/24971: ${(-)var} sorts on signed integersPeter Stephenson2020-07-031-0/+7
|
* 46072 + 46136: Add the 'zle $widget -f nolast' syntax, to improve ↵Daniel Shahaf2020-06-271-0/+11
| | | | | | add-zle-hook-widget support for multiple hook functions. See workers/46004 for the use-case.
* 46100: Fix =subst before =(subst)Peter Stephenson2020-06-261-0/+4
| | | | | | This occurs with SH file expansion ordering. Add test.
* 45895: ignore deduplication patterns in _sequenceoxiedi2020-06-261-0/+10
|
* 46068 (tweaked) (was: github #57): region_highlight: Add memo= support.Daniel Shahaf2020-06-251-0/+44
| | | | | | | | | | | | | | | | This is useful when multiple plugins add region_highlight entries and subsequently want to remove only their own entries. Without this functionality, recognizing one's region_highlight entries is not trivial because the 'start' and 'end' offsets are modified by editing of $BUFFER and the highlight specification may not be unique or distinctive. The tweaks are as follows: - Change zfree() to zsfree() per workers/46070. - Remove the mem.c hunk, as it changed the signature of only one out of two alternative definitions of zsfree(). (The definition that hunk touched is the one that's not used by default.)
* 46102: test harness: Make the XPass message distinct from the Fail message.Daniel Shahaf2020-06-251-1/+14
| | | | | | | | | | | | | | | | | The new output is: ./Test/B02typeset.ztst: starting. Test ./Test/B02typeset.ztst was expected to fail, but passed. Was testing: this is the description that's after the colon on in the ztst file ./Test/B02typeset.ztst: test XPassed. ************************************** 0 successful test scripts, 1 failure, 0 skipped ************************************** make[1]: *** [Makefile:190: check] Error 1 make: *** [Makefile:263: check] Error 2 The new function is deliberately very similar to ZTST_testfailed() just above it.
* 46079: Ignore double quotes in math expressions.Peter Stephenson2020-06-231-2/+8
| | | | | | | Treat as white space. This is required for compatibility and previously had no use in zsh as it generated an error.
* 46067: Add a unit test for workers/46060.Daniel Shahaf2020-06-181-0/+7
|
* 46026: Add CLOBBER_EMPTY option.Peter Stephenson2020-06-091-0/+14
|
* 45900: Fix issues with escaped newline in $-substitution.Peter Stephenson2020-05-231-3/+21
|
* 45862: Add test cases for 45843#1 and 45843#2, adapted from Aaron Esau and pws.Daniel Shahaf2020-05-201-0/+10
|
* unposted: Add tests for previous commitMikael Magnusson2020-05-121-1/+7
|
* 45764: Add a regression test for 45772. Test by RomanDaniel Shahaf2020-05-051-0/+14
|
* 45730: _arguments: Add the -0 flag, which makes $opt_args be populated sanely.Daniel Shahaf2020-05-031-1/+7
| | | | Also, write/extend docstrings for sepjoin() and zjoin().
* 45737 (+ docs, and update the test from 45722): zstyle: When determining the ↵Daniel Shahaf2020-05-021-1/+1
| | | | weight (specificity) of a pattern, consider the number of components before anything else, as documented.
* unposted: Revert unintentional move from 45722.Daniel Shahaf2020-05-021-0/+166
|
* 45722: docs: Change zstyle example to a non-hierarchical oneDaniel Shahaf2020-05-021-153/+0
|
* 45708: zsh/system: Enable sub-second timeout in zsystem flockCedric Ware2020-04-201-0/+150
|
* Add SHORT_REPEAT optionMikael Magnusson2020-04-021-5/+14
|
* unposted: Make test platform-independent.Daniel Shahaf2020-04-021-2/+2
| | | | Follow-up to the grandparent commit.
* 45542: P01privileged: Use test-directory owner for auto-determined EUID/EGIDdana2020-04-011-8/+15
| | | | Prevents failure when the repo (or its parent) has mode 0700
* unposted: D02glob: Fix platform-dependent test failuredana2020-04-011-1/+1
| | | | | workers/45583 introduced a test failure on macOS, *BSD, and Solaris, where wc always outputs leading white space
* unposted: Fix syntax error introduced in 45591.Daniel Shahaf2020-03-281-1/+1
|
* 45640: Fix new test when ${PWD}'s value contains symlinks.Daniel Shahaf2020-03-281-4/+7
|
* 45584, 45620: zsh/rlimits: Skip the tests for this module when it wasn't ↵Daniel Shahaf2020-03-271-1/+9
| | | | compiled in.
* 45591 (Cf. 45587, 45620): In the test suite, centralize testing that ↵Daniel Shahaf2020-03-272-3/+2
| | | | | | | | | | compiled modules can be loaded successfully. Have V01zmodload.ztst check that all modules enabled in config.modules load successfully. With this change, the test files for individual modules may assume that if 'zmodload' fails that must be because the module hadn't been compiled in, and mark themselves as skipped in that case.
* 45616: Remove token from count argument to repeatPeter Stephenson2020-03-261-0/+7
|
* 45583/0008: Extend tests to prove that what remains of xsymlinks() handles ↵Daniel Shahaf2020-03-251-0/+9
| | | | symlink loops gracefully.
* 45583/0005: Add a test for bin_whence's symlinks resolution.Daniel Shahaf2020-03-251-0/+22
|
* 45583/0004: Fix segfault on resolving symlink loopsDaniel Shahaf2020-03-251-6/+5
|
* 45583/0001: Add tests for the segfault on resolving a symlink loop bug ↵Daniel Shahaf2020-03-251-0/+36
| | | | | | (workers/45282). This is workers/45377, extended.
* 45590/0002 (in part): zsh/rlimits: Test that ulimit letters are unique.Daniel Shahaf2020-03-251-0/+10
|
* 45601: fix another status in new function -T testJun-ichi Takimoto2020-03-251-1/+1
|
* 45601: Fix status in new functions -T testPeter Stephenson2020-03-221-1/+1
|
* 45583/0009: Add end-of-options guard support to 'function -T'.Daniel Shahaf2020-03-221-1/+21
|
* 45583/0008: Add the 'function -T' syntax.Daniel Shahaf2020-03-221-0/+25
| | | | Config/version.mk was bumped in the previous commit.
* 45537 (tweaked): E02xtrace: Fix inconsistent function-name encoding in ↵dana2020-03-131-1/+1
| | | | | | preserves-xtrace test Tweaked per workers/45550, needs workers/45536 to be effective
* 45470: C02cond: Simplify '-N cond' testdana2020-03-111-24/+12
| | | | | This fixes an (intermittent?) issue with the test on macOS+APFS, and hopefully makes it simpler and faster in general
* 45518 + unposted tweak (change single quotes to double quotes): Fix ↵Daniel Shahaf2020-03-091-14/+19
| | | | V01zmotload.ztst test failures when zsh/parameter is dynamically linked (which is the default).
* Merge remote-tracking branch 'origin/master' into 5.9Daniel Shahaf2020-03-079-4/+354
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Test/D02glob.ztst: On the "unreadable directories can be globbed (users/24619, users/24626)" test, resolve conflicts by removing the Cygwin-only skip that has been added in master, since the test is passing on this branch. This effectively reverts workers/45492. See discussion starting in workers/45504. * origin/master: unposted: Remove 'sgi', as that OpenBSD port has been discontinued. 45509: fix typos in B01cd.ztst 45490 (+45495 and a test): refactor rlimits.c github #49: Fix typo: longson should be loongson users/24710: Fix job control problem with sudo. 45492: skip test added by users/24633 on Cygwin 45488: COMP_WORDS for bash need "$@"-style quoting 45487: Missing mod_export declarations for AIX 45447: Complete vcs_info_hookadd and vcs_info_hookdel. Expose _vcs_info_hooks as a top-level helper function. 45463: test: kill: Document why we use SIGURG 45453: builtins: kill: Do not signal current process group when pid is empty 45452: builtins: kill: Add `kill ''` regression test with explicit sigspec 45451: builtins: kill: Add basic test suite github #48/0002: vcs_info git: properly detect bare repositories github #48/0001: vcs_info git: avoid warnings in bare repositories unposted: Post-release version bump unposted: Release 5.8 CVE-2019-20044: Update change log for preceding commits Update NEWS/README Add unsetopt/PRIVILEGED tests Clean up error-message white space Improve PRIVILEGED fixes (again) Improve PRIVILEGED fixes Drop privileges securely unposted: V01zmodload: Fix failing test from workers/45385 45423: _su: Improve arg handling, shell look-ups unposted: _zip: Recognise '--' 45385: Add a test for 'zmodload -Fa' preemptively disabling ("blacklisting"?) features. unposted: Test release: 5.7.1-test-3 zsh/system: Fix infinite loop in sysread _diff_options: Restore -w completion lost in workers/43351 unposted: Fix ChangeLog typo. 45368: Add tests for workers/45367's issue about double slashes in 'cd -P' and /home/daniel/in/zsh. 45373: Fix ERR_EXIT bug in else branch of if. 45372: Record a symlink loop bug involving :P 45365: _git: Fix __git_recent_branches for the case when a commit has an empty message 45343: Queue signals around arithmetic evaluations 45344: Document where third-party completion functions should be installed. 45345: internal: ztst.vim: Fix highlighting of zsh comments in test payload unposted: internal: Add some comments and fix indentation. No functional change. 45340: internal: Document the difference between paramtab and realparamtab. 45332: _git: add completion for git-version _brace_parameter: add missing \ Conflicts: ChangeLog Test/D02glob.ztst Test/V01zmodload.ztst
| * 45509: fix typos in B01cd.ztstJun-ichi Takimoto2020-03-061-3/+3
| |
| * 45490 (+45495 and a test): refactor rlimits.cJun-ichi Takimoto2020-03-061-0/+10
| | | | | | | | | | Use a table of known resouces instead of generating rlimits.h by rlimits.awk.
| * 45492: skip test added by users/24633 on CygwinJun-ichi Takimoto2020-02-271-5/+9
| |
| * 45463: test: kill: Document why we use SIGURGChris Down2020-02-181-0/+9
| | | | | | | | See discussion in workers/45460.
| * 45453: builtins: kill: Do not signal current process group when pid is emptyChris Down2020-02-181-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The following case was encountered in the wild: % zsh; echo "$?" % trap 'exit 5' TERM % kill '' 5 This behaviour seems more likely to be the result of bugs in programs (e.g. `kill -9 "$unsetvar") rather than being desirable behaviour to me. It also seems unintentional judging by the code and documentation, since it comes about as a result of the fact that: - `isanum` returns true for empty strings (since an empty string technically only consists of digits and minuses...); - `atoi`, when passed a pointer to an invalid number, returns 0; - `kill(0, signal)` sends the signal in question to all processes in the current process group. There are (at least) two ways to solve this issue: 1. Add special handling to `kill` to avoid this case. See this patch[0] for a version that does that. 2. Change how isanum behaves. Since the only two call sites that use it both seem like they should handle the case where the input char array is empty, that seems like a reasonable overall change to me.[1] After this patch: % trap 'exit 5' TERM % kill '' kill: illegal pid: The regression test for `kill` without a sigspec is also included in this commit, as previously it's not possible to test it trivially as it would still kill the test runner in expected-to-fail mode; see discussion in workers/45449. 0: workers/45426: https://www.zsh.org/mla/workers/2020/msg00251.html 1: The other call site using isanum() is the fg builtin, but in that case we just fail later since we can't find any job named '', so no big deal either way. It's the kill case which is more concerning.
| * 45452: builtins: kill: Add `kill ''` regression test with explicit sigspecChris Down2020-02-181-0/+9
| | | | | | | | | | | | | | | | The version without a sigspec can't be added yet because it would still kill the test runner even in expected-to-fail mode; see workers/45449 for discussion. For the same reason, we use a signal which is non-fatal by default and unlikely to be sent by someone else, SIGURG, to do the expected-to-fail case prior to the fix.
| * 45451: builtins: kill: Add basic test suiteChris Down2020-02-181-0/+60
| | | | | | | | | | | | This is not totally comprehensive, but at least it's a start for the core functionality. In the next commits, we'll also use this base to add some regression tests.
| * Add unsetopt/PRIVILEGED testsdana2020-02-143-1/+207
| |