Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
[PATCH v3 1/3] builtins: kill: Add basic test suite
- X-seq: zsh-workers 45451
- From: Chris Down <chris@xxxxxxxxxxxxxx>
- To: zsh-workers@xxxxxxx
- Subject: [PATCH v3 1/3] builtins: kill: Add basic test suite
- Date: Mon, 17 Feb 2020 10:11:46 -0500
- Cc: Daniel Shahaf <d.s@xxxxxxxxxxxxxxxxxx>
- List-help: <mailto:zsh-workers-help@zsh.org>
- List-id: Zsh Workers List <zsh-workers.zsh.org>
- List-post: <mailto:zsh-workers@zsh.org>
- List-unsubscribe: <mailto:zsh-workers-unsubscribe@zsh.org>
- Mailing-list: contact zsh-workers-help@xxxxxxx; run by ezmlm
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.
---
Test/B11kill.ztst | 60 +++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 60 insertions(+)
create mode 100644 Test/B11kill.ztst
diff --git a/Test/B11kill.ztst b/Test/B11kill.ztst
new file mode 100644
index 000000000..c254b0925
--- /dev/null
+++ b/Test/B11kill.ztst
@@ -0,0 +1,60 @@
+# Tests for the kill builtin.
+#
+# The exit codes 11 and 19 in this file don't mean anything special, they're
+# just an exit code which is specific enough that the failure of `kill` itself
+# can be differentiated from exiting due to executing a trap.
+
+%test
+
+# Correct invocation
+
+ if zmodload zsh/system &>/dev/null; then
+ (
+ trap 'exit 19' TERM
+ kill $sysparams[pid]
+ )
+ else
+ ZTST_skip='Cannot zmodload zsh/system, skipping kill with no sigspec'
+ fi
+19:kill with no sigspec
+
+
+ if zmodload zsh/system &>/dev/null; then
+ (
+ trap 'exit 11' USR1
+ kill -USR1 $sysparams[pid]
+ )
+ else
+ ZTST_skip='Cannot zmodload zsh/system, skipping kill with sigspec'
+ fi
+11:kill with sigspec
+
+# Incorrect invocation
+
+ (
+ kill a b c
+ )
+3:kill with multiple wrong inputs should increment status
+?(eval):kill:2: illegal pid: a
+?(eval):kill:2: illegal pid: b
+?(eval):kill:2: illegal pid: c
+
+ (
+ kill -INT a b c
+ )
+3:kill with sigspec and wrong inputs should increment status
+?(eval):kill:2: illegal pid: a
+?(eval):kill:2: illegal pid: b
+?(eval):kill:2: illegal pid: c
+
+ (
+ kill
+ )
+1:kill with no arguments
+?(eval):kill:2: not enough arguments
+
+ (
+ kill -INT
+ )
+1:kill with sigspec only
+?(eval):kill:2: not enough arguments
--
2.25.0
Messages sorted by:
Reverse Date,
Date,
Thread,
Author