summaryrefslogtreecommitdiff
path: root/scripts/qemuimage-tests/sanity/scp
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/scp
parent2078af333d704fd894a2dedbc19cef5775cdadbb (diff)
downloadopenembedded-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-xscripts/qemuimage-tests/sanity/scp71
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