diff options
author | Jiajun Xu <jiajun.xu@intel.com> | 2010-11-10 22:58:52 +0800 |
---|---|---|
committer | Saul Wold <sgw@linux.intel.com> | 2010-11-14 21:08:22 -0800 |
commit | d64c7ae88ca29def7dd2869acaa0e2ec047bd153 (patch) | |
tree | 21c2114e45481ef195b1c966a58612c5281a962b /scripts/qemuimage-tests/sanity/scp | |
parent | 2078af333d704fd894a2dedbc19cef5775cdadbb (diff) | |
download | openembedded-core-d64c7ae88ca29def7dd2869acaa0e2ec047bd153.tar.gz openembedded-core-d64c7ae88ca29def7dd2869acaa0e2ec047bd153.tar.bz2 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/scp')
-rwxr-xr-x | scripts/qemuimage-tests/sanity/scp | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/scripts/qemuimage-tests/sanity/scp b/scripts/qemuimage-tests/sanity/scp new file mode 100755 index 0000000000..ce3489d664 --- /dev/null +++ b/scripts/qemuimage-tests/sanity/scp @@ -0,0 +1,71 @@ +#!/bin/bash +# SCP Test Case for Sanity Test +# The case boot up the Qemu target with `poky-qemu qemuxxx`. +# Then check if file can be copied into target with scp command. +# +# 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 +SPID=0 +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 file can be copied from host into target +# For qemu target, the file is 5M +if [ $RET -eq 0 ]; then + echo $QEMUARCH | grep -q "qemu" + + if [ $? -eq 0 ]; then + dd if=/dev/zero of=${TEST_TMP}/scp_test_file bs=512k count=10 + Test_SCP ${TARGET_IPADDR} ${TEST_TMP}/scp_test_file /home/root & + SPID=$! + fi + + # Check if scp finished or not + while [ $i -lt $TIMEOUT ] + do + ps -fp $SPID > /dev/null + if [ $? -ne 0 ]; then + RET=0 + break + fi + i=$((i+5)) + sleep 5 + done + + # Kill scp process if scp is not finished in time + if [ $i -ge $TIMEOUT ]; then + RET=1 + kill $SPID + fi +fi + +if [ ${RET} -eq 0 ]; then + Test_Info "SCP Test PASS" + Test_Kill_Qemu + Test_Print_Result "SCP" 0 + exit 0 +else + Test_Info "SCP Test FAIL" + Test_Kill_Qemu + Test_Print_Result "SCP" 1 + exit 1 +fi |