summary refs log tree commit diff stats
path: root/tests/system/tsigexitcode.nim
diff options
context:
space:
mode:
Diffstat (limited to 'tests/system/tsigexitcode.nim')
-rw-r--r--tests/system/tsigexitcode.nim11
1 files changed, 7 insertions, 4 deletions
diff --git a/tests/system/tsigexitcode.nim b/tests/system/tsigexitcode.nim
index 6922cb8eb..249256b40 100644
--- a/tests/system/tsigexitcode.nim
+++ b/tests/system/tsigexitcode.nim
@@ -11,10 +11,13 @@ proc main() =
     discard posix.raise(signal)
   else:
     # synchronize this list with lib/system/except.nim:registerSignalHandler()
-    let fatalSigs = [SIGINT, SIGSEGV, SIGABRT, SIGFPE, SIGILL, SIGBUS,
-                     SIGPIPE]
-    for s in fatalSigs:
+    let sigs = [SIGINT, SIGSEGV, SIGABRT, SIGFPE, SIGILL, SIGBUS, SIGPIPE]
+    for s in sigs:
       let (_, exitCode) = execCmdEx(quoteShellCommand [getAppFilename(), $s])
-      doAssert exitCode == 128 + s, "mismatched exit code for signal " & $s
+      if s == SIGPIPE:
+        # SIGPIPE should be ignored
+        doAssert exitCode == 0, $(exitCode, s)
+      else:
+        doAssert exitCode == 128+s, $(exitCode, s)
 
 main()