1*7c568831SAndroid Build Coastguard Worker#!/bin/sh 2*7c568831SAndroid Build Coastguard Worker 3*7c568831SAndroid Build Coastguard Workerset -e 4*7c568831SAndroid Build Coastguard Worker 5*7c568831SAndroid Build Coastguard Workerecho "## Scripts regression tests" 6*7c568831SAndroid Build Coastguard Worker 7*7c568831SAndroid Build Coastguard Workerif [ -n "$1" ]; then 8*7c568831SAndroid Build Coastguard Worker xmllint=$1 9*7c568831SAndroid Build Coastguard Workerelse 10*7c568831SAndroid Build Coastguard Worker xmllint=./xmllint 11*7c568831SAndroid Build Coastguard Workerfi 12*7c568831SAndroid Build Coastguard Worker 13*7c568831SAndroid Build Coastguard Workerexitcode=0 14*7c568831SAndroid Build Coastguard Worker 15*7c568831SAndroid Build Coastguard Workerfor i in test/scripts/*.script ; do 16*7c568831SAndroid Build Coastguard Worker name=$(basename $i .script) 17*7c568831SAndroid Build Coastguard Worker xml="./test/scripts/$name.xml" 18*7c568831SAndroid Build Coastguard Worker 19*7c568831SAndroid Build Coastguard Worker if [ -f $xml ] ; then 20*7c568831SAndroid Build Coastguard Worker if [ ! -f result/scripts/$name ] ; then 21*7c568831SAndroid Build Coastguard Worker echo "New test file $name" 22*7c568831SAndroid Build Coastguard Worker 23*7c568831SAndroid Build Coastguard Worker $xmllint --shell $xml < $i \ 24*7c568831SAndroid Build Coastguard Worker > result/scripts/$name \ 25*7c568831SAndroid Build Coastguard Worker 2> result/scripts/$name.err 26*7c568831SAndroid Build Coastguard Worker else 27*7c568831SAndroid Build Coastguard Worker $xmllint --shell $xml < $i > shell.out 2> shell.err || true 28*7c568831SAndroid Build Coastguard Worker 29*7c568831SAndroid Build Coastguard Worker if [ -f result/scripts/$name.err ]; then 30*7c568831SAndroid Build Coastguard Worker resulterr="result/scripts/$name.err" 31*7c568831SAndroid Build Coastguard Worker else 32*7c568831SAndroid Build Coastguard Worker resulterr=/dev/null 33*7c568831SAndroid Build Coastguard Worker fi 34*7c568831SAndroid Build Coastguard Worker 35*7c568831SAndroid Build Coastguard Worker log=$( 36*7c568831SAndroid Build Coastguard Worker diff -u result/scripts/$name shell.out || true; 37*7c568831SAndroid Build Coastguard Worker diff -u $resulterr shell.err || true 38*7c568831SAndroid Build Coastguard Worker ) 39*7c568831SAndroid Build Coastguard Worker 40*7c568831SAndroid Build Coastguard Worker if [ -n "$log" ] ; then 41*7c568831SAndroid Build Coastguard Worker echo $name result 42*7c568831SAndroid Build Coastguard Worker echo "$log" 43*7c568831SAndroid Build Coastguard Worker exitcode=1 44*7c568831SAndroid Build Coastguard Worker fi 45*7c568831SAndroid Build Coastguard Worker 46*7c568831SAndroid Build Coastguard Worker rm shell.out shell.err 47*7c568831SAndroid Build Coastguard Worker fi 48*7c568831SAndroid Build Coastguard Worker fi 49*7c568831SAndroid Build Coastguard Workerdone 50*7c568831SAndroid Build Coastguard Worker 51*7c568831SAndroid Build Coastguard Workerexit $exitcode 52