From 95401dfa8c2594259e080c98fc8b4177dd358b00 Mon Sep 17 00:00:00 2001 From: Vishal Bhoj Date: Wed, 17 Feb 2016 10:18:30 +0530 Subject: test-art-host-test: record failing test and support to ignore failing test Signed-off-by: Vishal Bhoj --- test-art-host-test.sh | 25 ++++++++++++++++++++----- 1 file changed, 20 insertions(+), 5 deletions(-) diff --git a/test-art-host-test.sh b/test-art-host-test.sh index 69c7448..b8dd0c9 100755 --- a/test-art-host-test.sh +++ b/test-art-host-test.sh @@ -5,7 +5,7 @@ NO_TMPFS_TARGET_PRODUCT=y . $PWD/setup-android.sh [[ $JENKINS_MODE ]] && sudo chmod 1777 /tmp -: ${TEST_ART_COMMAND:=test-art-target} +: ${TEST_ART_COMMAND:=test-art-host} TEST_ART_OUTPUT_DIR=$WORKSPACE/$TEST_ART_COMMAND/ export GTEST_OUTPUT=xml:$TEST_ART_OUTPUT_DIR MAKE_TARGETS=$TEST_ART_COMMAND @@ -24,13 +24,27 @@ export ART_TEST_RUN_TEST_2ND_ARCH=false export ART_TEST_RUN_TEST_DEBUG=false export ART_TEST_RUN_TEST_NDEBUG=true export ART_USE_OPTIMIZING_COMPILER=true -failed=0 +actually_failed=0 make -j4 $MAKE_TARGETS > $WORKSPACE/build-logs.txt 2>&1 if [[ $? -ne 0 ]]; then - echo "Error: *** Error make failed" cat $WORKSPACE/build-logs.txt - failed=1 + cat $WORKSPACE/build-logs.txt | grep -i "FAILED!" > $WORKSPACE/failed-test.txt + grep " FAILED" $WORKSPACE/build-logs.txt | grep "^test" | sed -e "s/ FAILED//g" | grep gtest >> $WORKSPACE/failed-test.txt + grep "\[91mFAILED" $WORKSPACE/build-logs.txt | grep "^test" | sed -e "s/ .*//g" | grep gtest >>$WORKSPACE/failed-test.txt + sed -i "s/.*test\///g" $WORKSPACE/failed-test.txt + sed -i "s/: FAILED\!//g" $WORKSPACE/failed-test.txt + IFS=';' read -r -a ignored_tests <<< $CURRENT_FAILING_ART_TESTS + for test in ${ignored_tests[@]} + do + echo $test >> $WORKSPACE/ignored_tests.txt + done + while read p; do + if ! grep -i $p $WORKSPACE/ignored_tests.txt; then + actually_failed=1 + export failing_tests="$failing_tests $p" + fi + done < $WORKSPACE/failed-test.txt fi MAKE_TIME=$(echo "$MAKE_END - $MAKE_START" | bc) @@ -38,6 +52,7 @@ echo "YVALUE=$MAKE_TIME" > $WORKSPACE/make_time.txt echo "YVALUE=$REPO_TIME" > $WORKSPACE/repo_time.txt ccache -s -if [[ $failed -ne 0 ]];then +if [[ $actually_failed -ne 0 ]]; then + echo "$failing_tests tests have failed" exit 1 fi -- cgit v1.2.3