[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