summaryrefslogtreecommitdiff
path: root/scripts/qemuimage-tests/sanity/shutdown
diff options
context:
space:
mode:
authorJiajun Xu <jiajun.xu@intel.com>2010-11-10 22:58:52 +0800
committerSaul Wold <sgw@linux.intel.com>2010-11-14 21:08:22 -0800
commitd64c7ae88ca29def7dd2869acaa0e2ec047bd153 (patch)
tree21c2114e45481ef195b1c966a58612c5281a962b /scripts/qemuimage-tests/sanity/shutdown
parent2078af333d704fd894a2dedbc19cef5775cdadbb (diff)
downloadopenembedded-core-d64c7ae88ca29def7dd2869acaa0e2ec047bd153.tar.gz
openembedded-core-d64c7ae88ca29def7dd2869acaa0e2ec047bd153.tar.bz2
openembedded-core-d64c7ae88ca29def7dd2869acaa0e2ec047bd153.tar.xz
openembedded-core-d64c7ae88ca29def7dd2869acaa0e2ec047bd153.zip
imagetest-qemu: Add sanity test cases for scp/shutdown in target
scp test is to check if file copying via network work or not in target. shutdown test is to check if target can be poweroff with qemu process off. Signed-off-by Jiajun Xu <jiajun.xu@intel.com>
Diffstat (limited to 'scripts/qemuimage-tests/sanity/shutdown')
-rwxr-xr-xscripts/qemuimage-tests/sanity/shutdown70
1 files changed, 70 insertions, 0 deletions
diff --git a/scripts/qemuimage-tests/sanity/shutdown b/scripts/qemuimage-tests/sanity/shutdown
new file mode 100755
index 000000000..e36b4a983
--- /dev/null
+++ b/scripts/qemuimage-tests/sanity/shutdown
@@ -0,0 +1,70 @@
+#!/bin/bash
+# Shutdown Test Case for Sanity Test
+# The case boot up the Qemu target with `poky-qemu qemuxxx`.
+# Then check if target can shutdown
+# For qemux86/x86-64, we use command "poweroff" for target shutdown
+# For non-x86 targets, we use command "reboot" for target shutdown
+#
+# Author: Jiajun Xu <jiajun.xu@intel.com>
+#
+# This file is licensed under the GNU General Public License,
+# Version 2.
+#
+
+. $POKYBASE/scripts/qemuimage-testlib
+
+TIMEOUT=360
+RET=1
+i=0
+
+# Start qemu and check its network
+Test_Create_Qemu ${TIMEOUT}
+
+# If qemu network is up, check ssh service in qemu
+if [ $? -eq 0 ]; then
+ Test_Info "Begin to Test SSH Service in Qemu"
+ Test_SSH_UP ${TARGET_IPADDR} ${TIMEOUT}
+ RET=$?
+else
+ RET=1
+fi
+
+# Check if target can shutdown
+if [ $RET -eq 0 ]; then
+ echo $QEMUARCH | grep -q "qemux86"
+
+ # For qemux86/x86-64, command "poweroff" is used
+ # For non x86 qemu targets, command "reboot" is used because of BUG #100
+ if [ $? -eq 0 ]; then
+ Test_SSH ${TARGET_IPADDR} "/sbin/poweroff"
+ else
+ Test_SSH ${TARGET_IPADDR} "/sbin/reboot"
+ fi
+
+ # If qemu start up process ends up, it means shutdown completes
+ while [ $i -lt $TIMEOUT ]
+ do
+ ps -fp $PID > /dev/null
+ if [ $? -ne 0 ]; then
+ RET=0
+ break
+ fi
+ i=$((i+5))
+ sleep 5
+ done
+
+ if [ $i -ge $TIMEOUT ]; then
+ RET=1
+ fi
+fi
+
+if [ ${RET} -eq 0 ]; then
+ Test_Info "Shutdown Test PASS"
+ Test_Print_Result "shutdown" 0
+ exit 0
+else
+ Test_Info "Shutdown Test FAIL"
+ Test_Kill_Qemu
+ Test_Print_Result "shutdown" 1
+ exit 1
+fi