cs252/lab3-src/test-shell/test_zombie
2018-10-25 14:45:56 -04:00

36 lines
721 B
Bash
Executable File

#!/bin/bash
rm -f shell-out
myname=`whoami`
echo -e "\033[1;4;93mTest_zombie: Zombie Cleanup\033[0m"
before=`/bin/ps -u $myname | grep -c defunc`
echo "ls &" > shell-in
echo "ls &" >> shell-in
echo "ls &" >> shell-in
echo "ls &" >> shell-in
echo "ls &" >> shell-in
echo "ls &" >> shell-in
echo "ls &" >> shell-in
echo "sleep 5" >> shell-in
../shell < shell-in > shell-out &
sleep 1
grep test shell-out > out2 2>&1
if [ $? -ne 0 ]
then
echo -e "\033[1;31m$0 Failed\033[0m"
exit -1
fi
after=`/bin/ps -u $myname | grep -c defunc`
if [ $before -ne $after ]
then
echo -e "\033[1;31m$0 Failed. Zombie processes still around ($before, $after)\033[0m"
exit -1
fi
echo -e "\033[1;32m$0 Passed\033[0m"
exit 0