#!/bin/bash
# Dmesg Check Test Case for Sanity Test
# The case boot up the Qemu target with `poky-qemu qemuxxx`.
# Then check if there is any error log in dmesg.
#
# Author: Jiajun Xu <jiajun.xu@intel.com>
#
# This file is licensed under the GNU General Public License,
# Version 2.
#

. $POKYBASE/scripts/qemuimage-testlib

TIMEOUT=400
RET=1

# 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 there is any error log in dmesg
if [ $RET -eq 0 -a -f $TOOLS/dmesg.sh ]; then
	# Copy dmesg.sh into target
	Test_Target_Pre ${TARGET_IPADDR} $TOOLS/dmesg.sh
	if [ $? -eq 0 ]; then
		# Run dmesg.sh to check if there is any error message with command dmesg
		Test_SSH ${TARGET_IPADDR} "sh $TARGET_TEST_DIR/dmesg.sh"
		RET=$?
	else
		RET=1
	fi
fi

if [ ${RET} -eq 0 ]; then
	Test_Info "Dmesg Test PASS"
	Test_Kill_Qemu
	Test_Print_Result "dmesg" 0
	exit 0
else
	Test_Info "Dmesg Test FAIL, Pls. check above error log"
	Test_Kill_Qemu
	Test_Print_Result "dmesg" 1
	exit 1
fi
