[nexuiz-commits] r8675 - in trunk/data/qcsrc: . server-testcase
DONOTREPLY at icculus.org
DONOTREPLY at icculus.org
Sat Feb 27 12:32:05 EST 2010
Author: div0
Date: 2010-02-27 12:32:04 -0500 (Sat, 27 Feb 2010)
New Revision: 8675
Added:
trunk/data/qcsrc/server-testcase/
trunk/data/qcsrc/server-testcase/framework.qc
trunk/data/qcsrc/server-testcase/progs.src
trunk/data/qcsrc/server-testcase/run.sh
Log:
test case framework
Added: trunk/data/qcsrc/server-testcase/framework.qc
===================================================================
--- trunk/data/qcsrc/server-testcase/framework.qc (rev 0)
+++ trunk/data/qcsrc/server-testcase/framework.qc 2010-02-27 17:32:04 UTC (rev 8675)
@@ -0,0 +1,14 @@
+void error(string e) = #10;
+float test();
+
+void spawnfunc_worldspawn()
+{
+ float r;
+ r = test();
+ if(r == 1)
+ error("TESTCASE: PASS");
+ else if(r == 0)
+ error("TESTCASE: FAIL");
+ else
+ error("TESTCASE: INVALID");
+}
Added: trunk/data/qcsrc/server-testcase/progs.src
===================================================================
--- trunk/data/qcsrc/server-testcase/progs.src (rev 0)
+++ trunk/data/qcsrc/server-testcase/progs.src 2010-02-27 17:32:04 UTC (rev 8675)
@@ -0,0 +1,4 @@
+../../progs-testcase.dat
+../server/sys.qh
+framework.qc
+testcase.qc
Added: trunk/data/qcsrc/server-testcase/run.sh
===================================================================
--- trunk/data/qcsrc/server-testcase/run.sh (rev 0)
+++ trunk/data/qcsrc/server-testcase/run.sh 2010-02-27 17:32:04 UTC (rev 8675)
@@ -0,0 +1,43 @@
+#!/bin/sh
+
+if [ "$#" -lt 3 ]; then
+ echo "Usage: $0 'float test() { if(fail) return 0; else if(good) return 1; else return -1; }' ./darkplaces-dedicated basement +sv_cheats 1"
+ exit 125
+fi
+
+case "$0" in
+ */*)
+ dir=${0%/*}
+ ;;
+ *)
+ dir=`pwd`
+ ;;
+esac
+testcase=$1; shift
+engine=$1; shift
+map=$1; shift
+echo "$testcase" > "$dir/testcase.qc"
+if ( cd $dir && fteqcc ); then
+ r=`"$engine" -nexuiz -basedir "$dir/../../.." +sv_progs progs-testcase.dat "$@" +map "$map" | tee /dev/stderr`
+ case "$r" in
+ *"TESTCASE: PASS"*)
+ echo "PASS detected"
+ exit 0
+ ;;
+ *"TESTCASE: FAIL"*)
+ echo "FAIL detected"
+ exit 1
+ ;;
+ *"TESTCASE: INVALID"*)
+ echo "INVALID detected"
+ exit 125
+ ;;
+ *)
+ echo "Running failed"
+ exit 125
+ ;;
+ esac
+else
+ echo "Compilation failed"
+ exit 125
+fi
Property changes on: trunk/data/qcsrc/server-testcase/run.sh
___________________________________________________________________
Name: svn:executable
+ *
More information about the nexuiz-commits
mailing list