[poky] [PATCH 1/1] qemuimage-testlib: Add check for existence of image and correctness of ip address

Jiajun Xu jiajun.xu at intel.com
Thu Dec 23 07:26:20 PST 2010


Fixes [BUGID #612, #611]

Add check for existence of image to be tested in qemuimage-testlib.
This ensures that sanity test returns failure immediatly when there is
no image found. And also add check for the correctness of ip address.
If the ip address returned by function Test_Fetch_Target_IP is 0, it
means qemu starts up failed and no valid ip address found.

Signed-off-by Jiajun Xu <jiajun.xu at intel.com>
---
 scripts/qemuimage-testlib |   23 +++++++++++++++++++++++
 1 files changed, 23 insertions(+), 0 deletions(-)

diff --git a/scripts/qemuimage-testlib b/scripts/qemuimage-testlib
index c2c394d..608c6f0 100644
--- a/scripts/qemuimage-testlib
+++ b/scripts/qemuimage-testlib
@@ -365,8 +365,21 @@ Test_Create_Qemu()
 	elif [ "$QEMUARCH" = "qemumips" ]; then
 		KERNEL=$(Test_Find_Image -l ${DEPLOY_DIR}/images -k vmlinux -a ${QEMUARCH})
 	fi
+
+	# If there is no kernel image found, return failed directly
+	if [ $? -eq 1 ]; then
+		Test_Info "No kernel image file found under ${DEPLOY_DIR}/images for ${QEMUARCH}, pls. have a check"
+		return $ret
+	fi
 	
 	ROOTFS_IMAGE=$(Test_Find_Image -l ${DEPLOY_DIR}/images -t ${QEMUTARGET} -a ${QEMUARCH})
+
+	# If there is no rootfs image found, return failed directly
+	if [ $? -eq 1 ]; then
+		Test_Info "No ${QEMUTARGET} rootfs image file found under ${DEPLOY_DIR}/images for ${QEMUARCH}, pls. have a check"
+		return $ret
+	fi
+
 	TEST_ROOTFS_IMAGE="${TEST_TMP}/${QEMUTARGET}-${QEMUARCH}-test.ext3"
 	
 	CP=`which cp`
@@ -375,6 +388,11 @@ Test_Create_Qemu()
 	fi
 	$CP $ROOTFS_IMAGE $TEST_ROOTFS_IMAGE
 
+	if [ $? -ne 0 ]; then
+		Test_Info "Image ${ROOTFS_IMAGE} copy to ${TEST_ROOTFS_IMAGE} failed, return fail"
+		return $ret
+	fi
+
 	export MACHINE=$QEMUARCH
 
 	# Create Qemu in localhost VNC Port 1
@@ -402,6 +420,11 @@ Test_Create_Qemu()
 	if [ ${up_time} -lt ${timeout} ]; then
 		sleep 5
 		TARGET_IPADDR=`Test_Fetch_Target_IP $PID`
+		# If IP address is 0, means there is no qemu process found
+		if [ ${TARGET_IPADDR} -eq 0 ]; then
+			Test_Info "There is no qemu process or qemu ip address found, return failed"
+			return $ret
+		fi
 	fi
 
 	while [ ${up_time} -lt ${timeout} ]
-- 
1.7.1




More information about the poky mailing list