Don't check the files by using mic chroot method
[tools/itest-cases-mic.git] / cases / create / mixed_cases / mic_cr_raw_duplicate_log_native.case
1 <testcase>
2   <summary>check whether the log generated by "--logfile" have duplicated package number</summary>
3   <fixtures>
4     <copy src="ks_files/ivi.ks" />
5   </fixtures>
6   <steps><![CDATA[
7 losetup_path=$(sudo which losetup)
8 sudo $losetup_path -a
9 sudo $losetup_path -a | wc -l | xargs test 0 -eq
10 sudo mic cr -d -v  raw ivi.ks --logfile=raw.log --runtime=native
11 test -e raw.log
12 grep -ao "Installing.*" raw.log > tmp1.log
13 awk -F '  ' '{print $NF}' tmp1.log > tmp2.log
14 grep -ao "\[.*\]" tmp2.log > tmp3.log
15 #check whether it has duplicated adjacent lines
16 if $(uniq -d tmp3.log | grep '.*')
17 then
18     echo "Have duplicated adjacent lines"
19     exit 1
20 fi
21 Total_Pac=$(grep -ao "Packages: [0-9]* Total" raw.log | grep -ao "[0-9]*")
22 #check whether it starts from "[1/*]"
23 head -1 tmp3.log | grep "\[[[:space:]]*1\/$Total_Pac\]"
24 #check whether it ends with "eg. [46/46]"
25 tail -1 tmp3.log | grep "\[[[:space:]]*\($Total_Pac\)\/\1\]"
26 #check whether the package number is sequential
27 grep -ao "[0-9]*\/" tmp3.log > tmp4.log
28 sed -i 's/\///' tmp4.log
29 awk 'BEGIN{a=0} {if($1-a==1){a=$1}else{print"Not sequential";exit 1}}END{print "last number is:",a}' tmp4.log
30 sudo $losetup_path -a
31 sudo $losetup_path -a | wc -l | xargs test 0 -eq
32 ]]></steps>
33   <teardown><![CDATA[
34 echo "cleaning..."
35 test -e mic-output && sudo rm -rf mic-output
36 test -e tmp1.log && sudo rm tmp1.log
37 test -e tmp2.log && sudo rm tmp2.log
38 test -e tmp3.log && sudo rm tmp3.log
39 test -e tmp4.log && sudo rm tmp4.log
40 test -e raw.log && sudo rm raw.log
41 ]]></teardown>
42 </testcase>