#!/bin/bash
set -efu

pkg='nipype'
CUR_DIR=`pwd`

QUILT_PATCHES=debian/patches quilt push -a || true

export LC_ALL=C.UTF-8
if [ "${AUTOPKGTEST_TMP}" = "" ] ; then
  AUTOPKGTEST_TMP=$(mktemp -d /tmp/${pkg}-test.XXXXXX)
  trap "rm -rf ${AUTOPKGTEST_TMP}" 0 INT QUIT ABRT PIPE TERM
fi

cp -a ${CUR_DIR}/nipype "${AUTOPKGTEST_TMP}"
cp -a ${CUR_DIR}/debian/tests/test_sample.py "${AUTOPKGTEST_TMP}/nipype/tests"
cd "${AUTOPKGTEST_TMP}"

arch=$(dpkg-architecture -qDEB_HOST_ARCH)
# skip tests
if [ "$arch" = "s390x" ]; then
    SKIP_TEST_LIST=(${SKIP_TEST_LIST[@]} nipype.interfaces.mixins.fixheader.CopyHeaderInterface)
fi

SKIP_TESTS=""
list_initialised=0
for t in ${SKIP_TEST_LIST[@]}; do
    if [ ${list_initialised} = 0 ]; then
        SKIP_TESTS=$t
        list_initialised=1
    else
        SKIP_TESTS="${SKIP_TESTS} or $t"
    fi
done
if [ "x${SKIP_TESTS}" != "x" ]; then
    SKIP_TESTS="not ( ${SKIP_TESTS} )"
fi
echo "skipping tests with SKIP_TEST_LIST=${SKIP_TEST_LIST[@]}"

echo "Running Tests"

for py in $(py3versions -s 2> /dev/null)
do
    echo "Testing with $py in $(pwd):"
    $py -m pytest -v --doctest-modules -k "not nipype.interfaces.io.BIDSDataGrabber" nipype

done

cd ${CUR_DIR}
QUILT_PATCHES=debian/patches quilt pop -a || true

echo "PASS"
