X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=tests%2Fui%2Fterminal%2Fmain.at;h=29fef65843bebea780e02284364c40e3079618bc;hb=948615ba8e6585d3b8b655a181ec9fdc4bbad36f;hp=1ee822688f30b416438d145fa79a834739a526fc;hpb=afca77f0c62b04630fde858c923134e8c680ffa9;p=pspp diff --git a/tests/ui/terminal/main.at b/tests/ui/terminal/main.at index 1ee822688f..29fef65843 100644 --- a/tests/ui/terminal/main.at +++ b/tests/ui/terminal/main.at @@ -1,7 +1,74 @@ +dnl PSPP - a program for statistical analysis. +dnl Copyright (C) 2017 Free Software Foundation, Inc. +dnl +dnl This program is free software: you can redistribute it and/or modify +dnl it under the terms of the GNU General Public License as published by +dnl the Free Software Foundation, either version 3 of the License, or +dnl (at your option) any later version. +dnl +dnl This program is distributed in the hope that it will be useful, +dnl but WITHOUT ANY WARRANTY; without even the implied warranty of +dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +dnl GNU General Public License for more details. +dnl +dnl You should have received a copy of the GNU General Public License +dnl along with this program. If not, see . +dnl AT_BANNER([PSPP terminal UI]) AT_SETUP([nonexistent syntax file crash]) -AT_CHECK([pspp nonexistent], [1], +AT_CHECK([pspp nonexistent], [1], [error: Opening `nonexistent': No such file or directory. ]) AT_CLEANUP + +AT_SETUP([SIGTERM yields clean shutdown]) +AT_KEYWORDS([slow]) +AT_DATA([main.sps], [dnl +INPUT PROGRAM. +COMPUTE x = x + 1. +DO IF x = 10000. +END CASE. +ELSE IF x < 0. +END FILE. +END IF. +END INPUT PROGRAM. +EXECUTE. +]) +AT_CHECK([pspp main.sps & sleep 1; kill $!; wait $!], [143], [], [ignore]) +AT_CLEANUP + +AT_SETUP([SIGSEGV yields error report]) + +# This test intentionally causes SIGSEGV, so make Address Sanitizer ignore it. +ASAN_OPTIONS=$ASAN_OPTIONS:handle_segv=0; export ASAN_OPTIONS + +AT_CHECK([[echo 'host command=["kill -SEGV $PPID"].' | pspp -O format=csv]], + [139], [], [stderr]) + +cat > expout <