提交 318cd6fd 编写于 作者: I Ivo De Decker

run-ci: add option to run python3 tests with 2to3

上级 586f5a9e
......@@ -34,6 +34,14 @@ fi
export RUN_COVERAGE
if [ "x$1" = "x--python3" ]; then
DAK_PYTHON3=y
else
DAK_PYTHON3=
fi
export DAK_PYTHON3
set -eu
if [ ! -f dak/dak.py ]; then
......@@ -44,4 +52,59 @@ fi
run_apt-get update
run_apt-get install -y build-essential
run_apt-get build-dep -y .
dpkg-buildpackage -b
if [ "x$DAK_PYTHON3" = "x" ]; then
dpkg-buildpackage -b
else
run_apt-get install -y --no-install-recommends \
2to3 \
python3-coverage \
python3-debian \
python3-debianbts \
python3-ldap \
python3-psycopg2 \
python3-pytest \
python3-pytest-cov \
python3-rrdtool \
python3-sqlalchemy \
python3-tabulate \
python3-yaml \
python3-apt \
cleanup-newroot() {
if [[ -v DAK_NEWROOT ]]; then
rm -rf -- "${DAK_NEWROOT}"
fi
}
export DAK_NEWROOT=$(mktemp -d)
trap cleanup-newroot EXIT
export DAK_ROOT=$DAK_NEWROOT
export BASEDIR="$(cd $(dirname "${BASH_SOURCE}")/..; pwd)"
for dir in dak daklib
do
cp -a ${BASEDIR}/${dir}/ ${DAK_ROOT}/${dir}
2to3 -wn -x future -x import ${DAK_ROOT}/${dir}
done
for filename in tests integration-tests setup templates .coveragerc
do
ln -s ${BASEDIR}/${filename} ${DAK_ROOT}/${filename}
done
mkdir -p $DAK_ROOT/test-gnupghome
export GNUPGHOME=${DAK_ROOT}/test-gnupghome
cd ${DAK_ROOT}
PYTEST_COV_OPTIONS=" --cov-branch --cov --cov-report= "
py.test-3 -v ${PYTEST_COV_OPTIONS} daklib tests
make -C tests/fixtures/packages
./integration-tests/run-tests
python3-coverage combine --append
python3-coverage report -m
echo
python3-coverage html -d ${BASEDIR}/coverage
fi
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册