From: <dg...@su...> - 2009-01-14 13:46:54
|
Author: bellmich Date: Wed Jan 14 14:46:04 2009 New Revision: 155 URL: http://libwbxml.opensync.org/changeset/155 Log: added code to compare original and generated XML The correctness is tested now. Modified: wbxmlTestSuite/trunk/launchTests.sh Modified: wbxmlTestSuite/trunk/launchTests.sh ============================================================================== --- wbxmlTestSuite/trunk/launchTests.sh Wed Jan 14 13:21:48 2009 (r154) +++ wbxmlTestSuite/trunk/launchTests.sh Wed Jan 14 14:46:04 2009 (r155) @@ -10,6 +10,19 @@ XML2WBXML=`which xml2wbxml` fi +if [ " ${XMLLINT_PROGRAM}" != " " ] +then + XMLLINT_BIN="${XMLLINT_PROGRAM}" +else + XMLLINT_BIN=`which xmllint` +fi +if [ " ${DIFF_BIN}" != " " ] +then + DIFF_BIN="${DIFF_BIN}" +else + DIFF_BIN=`which diff` +fi + if [ ! -x "$WBXML2XML" ] then echo Set WBXML2XML to the binary executable of wbxml2xml tool in order to use that script. @@ -106,16 +119,18 @@ OUT_WBXML="$TMP_DIR/`basename $i`/`basename $j .xml`.wbxml" OUT_XML="$TMP_DIR/`basename $i`/`basename $j`" - # Create output directory if they don't exist + # Create output directory if they don't exist if [ ! -d "$TMP_DIR/`basename $i`" ]; then mkdir -p "$TMP_DIR/`basename $i`" fi + # XML ==> WBXML echo Converting into: $OUT_WBXML CMD="$XML2WBXML -o $OUT_WBXML $j" $CMD if [ $? != 0 ]; then RESULT="FAILED"; fi + # WBXML ==> XML echo Converting back: $OUT_XML TESTDIR=`basename $i` if [ "$TESTDIR" = "ota" ]; @@ -130,6 +145,26 @@ CMD="$WBXML2XML $PARAMS -o $OUT_XML $OUT_WBXML" $CMD if [ $? != 0 ]; then RESULT="FAILED"; fi + + # compare original and generated XML + echo -n "Comparing the original and the generated XML ... " + if [ " $XMLLINT_BIN" = " " -o " $DIFF_BIN" = " " ] + then + echo UNSUPPORTED + else + # (first we strip the comments from the original file) + awk '/<!--/,/-->/{next}1' $j > ${OUT_XML}.org + xmllint -format ${OUT_XML}.org > ${OUT_XML}.org0 + xmllint -format ${OUT_XML} > ${OUT_XML}.new0 + DIFF_RESULT=`diff ${OUT_XML}.org0 ${OUT_XML}.new0` + if [ " ${DIFF_RESULT}" != " " ]; + then + echo FAILED + RESULT="FAILED"; + else + echo SUCCEEDED + fi + fi done fi |