#!/cmd/rc

# this test ensure that notes are enqueued in kernel

runner=$0
test = `{echo $runner|sed 's/.runner//'}
test_output = /tmp/output-`{basename $test}

if ( test -e $test_output) rm $test_output

$test $test_output &
testpid = $APID

while ( ! test -e $test_output ) { sleep 2 }

echo $test started, output to $test_output, kill at /proc/$testpid/ctl

echo -n first > /proc/$testpid/note
echo -n second > /proc/$testpid/note
echo -n stop > /proc/$testpid/note

wait $testpid

if ( cat $test_output | grep 'waiting after first.......................' > /dev/null ) {
if ( cat $test_output | grep 'waiting after second.......................' > /dev/null ) {
if ( cat $test_output | grep 'PASS' > /dev/null ) {
	rm $test_output
	echo PASS
	exit PASS
}
}
}
cat $test_output
echo FAIL
exit FAIL
