Mercurial > people > ptisnovs > daily_tests
changeset 18:a75e3cbf5b1c draft
Added script used to run TCK7.
author | Pavel Tisnovsky <ptisnovs@redhat.com> |
---|---|
date | Tue, 22 Apr 2014 13:35:48 +0200 |
parents | 4320e01c478a |
children | d8557576f53a |
files | ChangeLog tck7/run_all.sh |
diffstat | 2 files changed, 159 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog Tue Apr 22 11:17:53 2014 +0200 +++ b/ChangeLog Tue Apr 22 13:35:48 2014 +0200 @@ -1,3 +1,8 @@ +2014-04-22 Pavel Tisnovsky <ptisnovs@redhat.com> + + * tck7/run_all.sh: + Added script used to run TCK7. + 2014-04-22 Pavel Tisnovsky <ptisnovs@redhat.com> * tck7/scripts/c1.sh:
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tck7/run_all.sh Tue Apr 22 13:35:48 2014 +0200 @@ -0,0 +1,154 @@ +#!/usr/bin/env bash + +# Daily test builder. +# +# Copyright (C) 2009, 2010, 2011, 2012, 2013, 2014 Red Hat +# +# This tool is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This tool is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with IcedTea; see the file COPYING. If not, write to the +# Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +# 02110-1301 USA. +# +# Linking this library statically or dynamically with other modules is +# making a combined work based on this library. Thus, the terms and +# conditions of the GNU General Public License cover the whole +# combination. +# +# As a special exception, the copyright holders of this library give you +# permission to link this library with independent modules to produce an +# executable, regardless of the license terms of these independent +# modules, and to copy and distribute the resulting executable under +# terms of your choice, provided that you also meet, for each linked +# independent module, the terms and conditions of the license of that +# module. An independent module is a module which is not derived from +# or based on this library. If you modify this library, you may extend +# this exception to your version of the library, but you are not +# obligated to do so. If you do not wish to do so, delete this +# exception statement from your version. +# +# Run TCK against all tested JDKs. +# +# Author: Pavel Tisnovsky +# e-mail: ptisnovs@redhat.com + +JCK_ROOT_DIR=`cat jck.dir` +JCK_VERSION=7 +JCK_DIR=${JCK_ROOT_DIR}/${JCK_VERSION} +WORK_DIR=${JCK_ROOT_DIR}/work +RESULT_DIR=${JCK_ROOT_DIR}/results +DAILY_TESTS_DIR=`cat dailytests.dir` + +DATE=`date +%Y%m%d` + +exec > logs/test_$DATE.log 2>&1 + +TESTS="compiler devtools runtime" + +function run_tck() +{ + echo "Run tck $1" + REPORTDIR=${RESULT_DIR}/${DATE}-${1} + export DISPLAY=:0.0 + + for tst in ${TESTS} + do + TEST_NAME=JCK-${tst}-${JCK_VERSION} + CURRENT_WORKDIR=${WORK_DIR}/${DATE}-${1}/${tst} + CONFIG=${JCK_DIR}/${tst}-config.jti + + mkdir -p ${REPORTDIR}/${tst} + mkdir -p ${CURRENT_WORKDIR} + + ORIG_PATH="${PATH}" + export PATH="${JCK_DIR}/${TEST_NAME}/linux/bin;${ORIG_PATH}" + + java -Xms128m -Xmx512m -XX:PermSize=256m -XX:MaxPermSize=512m -jar ${JCK_DIR}/${TEST_NAME}/lib/javatest.jar \ + -workdir ${CURRENT_WORKDIR} \ + -open ${CONFIG} \ + -verbose:progress -runtests \ + -writeReport ${REPORTDIR}/${tst} + rc=$? + if [ $rc -ne 0 ]; then + log "${RED}test failed ${BLUE}${tst}${RESET}" + else + log "${GREEN}test passed ${BLUE}${tst}${RESET}" + fi + + export PATH="${ORIG_PATH}" + done +} + +function finish_tck() +{ + echo "Finish tck $1" + REPORTDIR=${RESULT_DIR}/${DATE}-${1} + export DISPLAY=:0.0 + echo "Processing ${REPORTDIR}" + for tst in ${TESTS} + do + TEST_NAME=JCK-${tst}-${JCK_VERSION} + CURRENT_WORKDIR=${WORK_DIR}/${DATE}-${1}/${tst} + CONFIG=${JCK_DIR}/${tst}-config.jti + + java -Xms128m -Xmx512m -XX:PermSize=256m -XX:MaxPermSize=512m -jar ${JCK_DIR}/${TEST_NAME}/lib/javatest.jar \ + -workDir ${CURRENT_WORKDIR} \ + -config ${CONFIG} \ + -verbose:progress \ + -priorStatus passed,fail,error \ + -writeReport ${REPORTDIR}/${tst} + done +} + +function run_tck1() +{ + rm ${JCK_DIR}/jdk + ln -s -T ${DAILY_TESTS_DIR}/builds/Icedtea7_forest/openjdk/build/linux-amd64/j2sdk-image/ ${JCK_DIR}/jdk + ls -l ${JCK_DIR}/ + + run_tck 1 + sleep 10 + finish_tck 1 +} + +function run_tck2() +{ + rm ${JCK_DIR}/jdk + ln -s -T ${DAILY_TESTS_DIRJCK_DIR}/builds/Icedtea7_forest_2_3/openjdk/build/linux-amd64/j2sdk-image/ ${JCK_DIR}/jdk + ls -l ${JCK_DIR}/ + + run_tck 2 + sleep 10 + finish_tck 2 +} + +function run_tck3() +{ + rm ${JCK_DIR}/jdk + ln -s -T ${DAILY_TESTS_DIRJCK_DIR}/builds/Icedtea7_forest_2_4/openjdk/build/linux-amd64/j2sdk-image/ ${JCK_DIR}/jdk + ls -l ${JCK_DIR}/ + + run_tck 3 + sleep 10 + finish_tck 3 +} + +function main() +{ + echo "Starting" + run_tck1 + run_tck2 + run_tck3 +} + +main +