#!/bin/sh

export JTREG_HOME="/usr/share/jtreg"
export JAVA_HOME="/usr/lib/jvm/default-java"
mkdir -p "${AUTOPKGTEST_TMP}/build/classes/com/sun/javatest/regtest/tool"

JAVA_VERSION=`${JAVA_HOME}/bin/java -version 2>&1`
JAVA_SPECIFICATION_VERSION=`echo "${JAVA_VERSION}" | \
    grep -e ^java -e ^openjdk | \
    head -n 1 | \
    sed -e 's/^[^0-9]*\(1\.\)*\([1-9][0-9]*\).*/\2/'`

PARALLEL_TESTS=`nproc --all`
# be safe for 32bit architectures
if [ "$PARALLEL_TESTS" -gt 2 ]; then
    PARALLEL_TESTS=2
fi

# avoid spurious failures such as
# applet/Pass.java#id0                  Failed. Execution failed: Applet thread threw exception: java.awt.AWTError: Can't connect to X11 window server using 'autopkgtest:0.0' as the value of the DISPLAY variable.
# alternative is ensure that X windows manager is running and shutdown it properly
export HEADLESS="1"

set -x

make -j${PARALLEL_TESTS} -C make \
    ASMTOOLS_JAR=${JTREG_HOME}/lib/asmtools.jar \
    BUILD_DIR="${AUTOPKGTEST_TMP}/build" \
    JUNIT_JARS=${JTREG_HOME}/lib/junit-platform-console-standalone.jar \
    TESTNG_JARS="${JTREG_HOME}/lib/testng.jar ${JTREG_HOME}/lib/guice.jar ${JTREG_HOME}/lib/jcommander.jar ${JTREG_HOME}/lib/slf4j-simple.jar ${JTREG_HOME}/lib/slf4j-api.jar" \
    JAVATEST_JAR=${JTREG_HOME}/lib/javatest.jar \
    BUILD_MILESTONE=src \
    JDKHOME="${JAVA_HOME}" \
    JAVA_SPECIFICATION_VERSION=${JAVA_SPECIFICATION_VERSION} \
    test
