]> git.lyx.org Git - lyx.git/blobdiff - development/keystest/autolyx
Next patch from John McCabe-Dansted.
[lyx.git] / development / keystest / autolyx
index 669042bbfaa8a51bccd2b0725e109766d6ba13ac..cf666a37d976b6a00baff21e0023762f1797c5e2 100755 (executable)
@@ -2,15 +2,59 @@
 # This script starts LyX, and restarts LyX if it is closed
 # it logs all output, including backtraces to development/keystest/out/GDB
 
+#Setting the following may give better screen shots
+#gconftool-2 /apps/metacity/general/compositing_manager -s -t bool true
+
+DIRNAME0=`dirname "$0"`
+OUTDIR="$DIRNAME0/out"
+
 #rename other windows to avoid confusion.
 wmctrl -N __renamed__ -r lyx
 wmctrl -N __renamed__ -r lyx
 wmctrl -N __renamed__ -r lyx
 wmctrl -N __renamed__ -r lyx
 
+(
 while true
 do
-  ( (echo SECONDS: `date +%s`
-       (echo "run
-  bt" ; yes q) | gdb src/lyx 2>&1) | strings|  tee -a development/keystest/out/GDB)
+  SEC=`date +%s`
+  GDB=$OUTDIR/$SEC.GDB
+  KEYCODE=$OUTDIR/$SEC.KEYCODE
+  ( sleep 20 && python $DIRNAME0/test.py | tee $KEYCODE) &
+  CHILD_PID="$!"
+  ls src/lyx ; sleep 1
+   pwd
+  #sleep 10
+  
+  #You may want to use the following to simulate SIGFPE
+  #(sleep 90 && killall -8 lyx) &
+
+  (echo "
+  shell svn info src/
+  run
+  bt
+  shell kill $CHILD_PID
+  shell import -window root '$GDB.png'
+  shell wmctrl -l
+  shell sleep 1
+  shell kill -9 $CHILD_PID
+  shell wmctrl -r __renamed__ -b add,shaded
+  shell wmctrl -r term -b add,shaded
+  shell wmctrl -r term -b add,shaded
+  shell wmctrl -R lyx 
+  shell import -window root '$GDB..png'
+ " ; yes q) | gdb src/lyx 2>&1 | strings|  tee $GDB
+  kill $CHILD_PID
+  #sleep 2 kill -9 $CHILD_PID
+  grep " signal " $GDB || (
+    rm $OUTDIR/*GDB*.bak
+    rm $OUTDIR/*KEYCODE*.bak
+    mv $KEYCODE $KEYCODE.bak
+    mv $GDB $GDB.bak
+    mv $GDB.png $GDB.png.bak
+    mv $GDB..png $GDB..png.bak
+    #rm $OUTDIR/KEYCODE.$SEC
+    #rm $OUTDIR/GDB.$SEC
+  )
 done
+) 2>&1 |tee $OUTDIR/log