From d64c7ae88ca29def7dd2869acaa0e2ec047bd153 Mon Sep 17 00:00:00 2001 From: Jiajun Xu Date: Wed, 10 Nov 2010 22:58:52 +0800 Subject: 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 --- scripts/qemuimage-tests/sanity/shutdown | 70 +++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100755 scripts/qemuimage-tests/sanity/shutdown (limited to 'scripts/qemuimage-tests/sanity/shutdown') diff --git a/scripts/qemuimage-tests/sanity/shutdown b/scripts/qemuimage-tests/sanity/shutdown new file mode 100755 index 0000000000..e36b4a983d --- /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 +# +# 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 -- cgit v1.2.3-54-g00ecf