Merge tag 'release_3_0_15' into tr-integ
[freeradius.git] / src / tests / runtests.sh
index 9253044..cc403c6 100755 (executable)
@@ -1,21 +1,14 @@
-#!/bin/bash
+#!/bin/sh
 
-# BIN_PATH should be specified by the caller
-#BIN_PATH=../main/
-
-PORT=12340
-HOME_PORT=12350
-SECRET=testing123
+: ${BIN_PATH=./}
+: ${PORT=12340}
+: ${HOME_PORT=12350}
+: ${SECRET=testing123}
 
 rm -f verbose.log
 RCODE=0
 
-rm -rf .cache
-mkdir .cache
-
-#
-#  Bootstrap the tests
-#
+echo "Running tests:"
 for NAME in $@
 do
   TOTAL=`grep TESTS $NAME | sed 's/.*TESTS//'`
@@ -34,40 +27,22 @@ do
     echo "Test-Name = \"$BASE\"," >> .request
     echo 'Test-Number = ' $NUMBER >> .request
 
-    mv .request .cache/$BASE:$NUMBER
-  done
-done
-
-echo "Running tests..."
-
-(cd .cache;ls -1  > ../.foo)
-rm -f .bar
-for x in `cat .foo`
-do
-   echo "-f .cache/$x" >> .bar
-done
-
-$BIN_PATH/radclient `cat .bar` -xFd . 127.0.0.1:$PORT auth $SECRET > radclient.log 2>&1
-if [ "$?" != "0" ]; then
-  echo "Failed running $BIN_PATH/radclient"
-  exit 1
-fi
-
-for x in `cat .foo`
-do
-  RESULT=`egrep ^\\.cache/$x radclient.log | sed 's/.* //'`
-  if [ "$RESULT" = "2" ]; then
-      echo "$x : Success"
+    rm ./radclient.log > /dev/null 2>&1
+    $BIN_PATH/radclient -f .request -xF -D ./ 127.0.0.1:$PORT auth $SECRET 1> ./radclient.log
+    if [ "$?" = "0" ]; then
+      echo "${BASE}_${NUMBER} : Success"
     else
-      echo "$x : FAILED"
+      echo "${BASE}_${NUMBER} : FAILED"
+      cat ./radclient.log
       RCODE=1
-  fi
+    fi
+  done
 done
 
 
 if [ "$RCODE" = "0" ]
 then
-    rm -f radiusd.log radclient.log 
+    rm -f radiusd.log radclient.log
     echo "All tests succeeded"
 else
     echo "See radclient.log for more details"