#!/bin/sh

. functions

output=${1:-objects}

echo $rekall $style --skipSplash RekallAutoTest.rkl

$rekall $style --skipSplash RekallAutoTest.rkl 2>/dev/null &
     PID=$!
rekallID=$rekall-$PID

waitForRekall $rekallID

servers=`$dcop $rekallID rekall-server-list 'listServers()'`

[ $output == 'objects' ] && {
	mkdir -p objects
	clean	 objects
}

echo	"DCOP Object dump test:"

for server in $servers
do
      echo "    $server"

      forms=`$dcop $rekallID rekall-part-form   'listObjects(QString)' "$server"`
    reports=`$dcop $rekallID rekall-part-report 'listObjects(QString)' "$server"`

    echo "        Forms:"

    for form in $forms
    do
	echo "            $form"
    	$dcop $rekallID rekall-part-form  'openObject(QString,QString,int)' 'MySQL' "$form" 1 > /dev/null

	if [ "`attribute rekall-form/$form '.' 'language'`" = 'py' ]
	then
	    $dcop $rekallID rekall-form/$form 'executeScript(QString)' "`cat object_walker`" > $output/$form
	fi

	$dcop $rekallID rekall-form/$form 'close(int)' 1 > /dev/null
    done
done

kill	$PID
