diff options
-rw-r--r-- | scripts/qemuimage-tests/tools/connman_test.sh | 28 |
1 files changed, 24 insertions, 4 deletions
diff --git a/scripts/qemuimage-tests/tools/connman_test.sh b/scripts/qemuimage-tests/tools/connman_test.sh index c4a66eebe3..8ed8b8b4aa 100644 --- a/scripts/qemuimage-tests/tools/connman_test.sh +++ b/scripts/qemuimage-tests/tools/connman_test.sh @@ -20,6 +20,16 @@ Target_Err() echo -e "\tTARGET: ##### End #####" } +# Check if ps comes from Procps or busybox first +ls -l `which ps` | grep -q "busybox" +RET=$? + +if [ $RET -eq 0 ]; then + PS="ps" +else + PS="ps -ef" +fi + # Check if connmand is in target if [ ! -f /usr/sbin/connmand ]; then Target_Info "No connmand command found" @@ -27,21 +37,31 @@ if [ ! -f /usr/sbin/connmand ]; then fi # Check if connmand is running in background -count=`ps -eo comm | cut -d " " -f 1 | grep -c connmand` +if [ $RET -eq 0 ]; then + count=`ps | awk '{print $5}' | grep -c connmand` +else + count=`ps -eo comm | cut -d " " -f 1 | grep -c connmand` +fi if [ $count -ne 1 ]; then Target_Info "connmand has issue when running in background, Pls, check the output of ps" - ps -ef | grep connmand + ${PS} | grep connmand exit 1 fi # Check if there is always only one connmand running in background if [ connmand > /dev/null 2>&1 ]; then Target_Info "connmand command run without problem" - count=`ps -eo comm | cut -d " " -f 1 | grep -c connmand` + + if [ $RET -eq 0 ]; then + count=`ps | awk '{print $5}' | grep -c connmand` + else + count=`ps -eo comm | cut -d " " -f 1 | grep -c connmand` + fi + if [ $count -ne 1 ]; then Target_Info "There are more than one connmand running in background, Pls, check the output of ps" - ps -ef | grep connmand + ${PS} | grep connmand exit 1 else Target_Info "There is always one connmand running in background, test pass" |