diff options
author | Bart Schaefer <schaefer@zsh.org> | 2022-05-01 11:56:28 -0700 |
---|---|---|
committer | Bart Schaefer <schaefer@zsh.org> | 2022-05-01 11:56:28 -0700 |
commit | cc264fb58b9da76c5bbb657613c26f6cd99f6afe (patch) | |
tree | 2f7ed398d55aaf2b98a8c84be940d062ace54ba5 | |
parent | afbbde282814906fde353dd6a6207942296b8465 (diff) | |
download | zsh-cc264fb58b9da76c5bbb657613c26f6cd99f6afe.tar.gz zsh-cc264fb58b9da76c5bbb657613c26f6cd99f6afe.tar.xz zsh-cc264fb58b9da76c5bbb657613c26f6cd99f6afe.zip |
50159: Tests for sysread, including 50101 regression
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | Test/V14system.ztst | 66 |
2 files changed, 70 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog index b1f7f643d..f5da4218d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2022-05-01 Bart Schaefer <schaefer@zsh.org> + + * 50159: Test/V14system.ztst: Tests for sysread + 2022-04-30 Bart Schaefer <schaefer@zsh.org> * unposted: Etc/BUGS: remove debian #924736, fixed since 5.8 by diff --git a/Test/V14system.ztst b/Test/V14system.ztst index ffdb730a4..81253324f 100644 --- a/Test/V14system.ztst +++ b/Test/V14system.ztst @@ -147,3 +147,69 @@ F:This timing test might fail due to process scheduling issues unrelated to zsh. 0:zsystem flock successful wait test, fractional seconds ?elapsed time seems OK F:This timing test might fail due to process scheduling issues unrelated to zsh. + + unset chars REPLY + print -n a few words | sysread -i 0 -c chars + ret=$? + print -- $chars x${REPLY}x + return ret +0:sysread default +>11 xa few wordsx + + unset chars REPLY + sysread -i 9 -c chars + ret=$? + print -- $chars x${REPLY}x + return ret +2:sysread read error +>-1 xx + + REPLY="say nothing" + sysread -i 9 -c chars + ret=$? + print -- $chars x${REPLY}x + return ret +2f:sysread read error +F:The value of $REPLY should be empty or unset when nothing is read? +>-1 xx + + unset chars REPLY + print -n a few words | sysread -i 0 -o 9 -c chars + ret=$? + print -- $chars x${REPLY}x + return ret +3:sysread write error +>11 xx + + sleep 3 | sysread -i 0 -t 1 +4:sysread timeout + + sysread -i 0 </dev/null +5:sysread end of file + + unset chars oration + print -n a few words | sysread -i 0 -o 9 -c chars oration + ret=$? + print $chars x${oration}x $REPLY + return ret +3:regression test: sysread write error with both -o and a parameter +>11 xa few wordsx + + unset chars oration + print a few words | sysread -i 0 -o 1 -c chars oration + ret=$? + print -- $chars x${oration}x $REPLY + return ret +0:regression test: sucessful sysread with both -o and a parameter +>a few words +>12 xx + + oration="do not say these words" + print a few words | sysread -i 0 -o 1 -c chars oration + ret=$? + print -- $chars x${oration}x $REPLY + return ret +0f:successful sysread with both -o and a parameter +F:The value of $oration should be empty or unset when everything is written? +>a few words +>12 xx |