about summary refs log tree commit diff
diff options
context:
space:
mode:
authorPeter Stephenson <pws@zsh.org>2016-09-08 12:15:14 +0100
committerPeter Stephenson <pws@zsh.org>2016-09-08 12:15:14 +0100
commit198c7bc2324d58ddc39c180b74eb7c00834fe623 (patch)
treed47ecac8dd130c5ab0c802165ec2ce9bde2de198
parent999e1ac64e69d552ab169ede3dd411b1afa1bce4 (diff)
downloadzsh-198c7bc2324d58ddc39c180b74eb7c00834fe623.tar.gz
zsh-198c7bc2324d58ddc39c180b74eb7c00834fe623.tar.xz
zsh-198c7bc2324d58ddc39c180b74eb7c00834fe623.zip
39222: test math functions in modules.
Use zsh/system.
-rw-r--r--ChangeLog5
-rw-r--r--Test/V01zmodload.ztst74
2 files changed, 79 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index eee877101..a45011ed3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2016-09-08  Peter Stephenson  <p.stephenson@samsung.com>
+
+	* 39222: Test/V01zmodload.ztst: test use of module loaded math
+	functions with zsh/systeme.
+
 2016-09-07  Danek Duvall  <duvall@comfychair.org>
 
 	* 39194: Completion/Unix/Command/_man: _man (Solaris): Ignore
diff --git a/Test/V01zmodload.ztst b/Test/V01zmodload.ztst
index 349ae9c89..092f9d1c7 100644
--- a/Test/V01zmodload.ztst
+++ b/Test/V01zmodload.ztst
@@ -271,6 +271,80 @@
 0:Listing feature autoloads includes unloaded modules
 >zmodload -Fa zsh/zftp b:zftp
 
+  if ! zmodload zsh/system >/dev/null 2>&1; then
+    ZTST_skip="zsh/system module not available"
+  else
+    zmodload -lF zsh/system
+    zmodload -F zsh/system -p:errnos
+    print ${+errnos}
+    zmodload -lF zsh/system
+    zmodload -F zsh/system +p:errnos
+    print ${+errnos}
+    zmodload -lF zsh/system
+  fi
+0:Regression tests for index bug with math functions.
+>+b:syserror
+>+b:sysread
+>+b:syswrite
+>+b:sysopen
+>+b:sysseek
+>+b:zsystem
+>+f:systell
+>+p:errnos
+>+p:sysparams
+>0
+>+b:syserror
+>+b:sysread
+>+b:syswrite
+>+b:sysopen
+>+b:sysseek
+>+b:zsystem
+>+f:systell
+>-p:errnos
+>+p:sysparams
+>1
+>+b:syserror
+>+b:sysread
+>+b:syswrite
+>+b:sysopen
+>+b:sysseek
+>+b:zsystem
+>+f:systell
+>+p:errnos
+>+p:sysparams
+
+  if ! zmodload zsh/system >/dev/null 2>&1; then
+    ZTST_skip="zsh/system module not available"
+  else
+    zmodload -F zsh/system -f:systell
+    zmodload -lF zsh/system
+    (print $(( systell(-1) )))
+    zmodload -F zsh/system +f:systell
+    zmodload -lF zsh/system
+    (print $(( systell(-1) )))
+  fi
+1:Module Features for math functions
+>+b:syserror
+>+b:sysread
+>+b:syswrite
+>+b:sysopen
+>+b:sysseek
+>+b:zsystem
+>-f:systell
+>+p:errnos
+>+p:sysparams
+>+b:syserror
+>+b:sysread
+>+b:syswrite
+>+b:sysopen
+>+b:sysseek
+>+b:zsystem
+>+f:systell
+>+p:errnos
+>+p:sysparams
+?(eval):6: unknown function: systell
+?(eval):9: file descriptor out of range
+
 %clean
 
  eval "$deps"