2014-08-18 08:04:23 +00:00
|
|
|
#!/bin/bash
|
2019-09-11 03:46:43 +00:00
|
|
|
: ${PYTHON=python3}
|
2014-09-06 03:38:20 +00:00
|
|
|
|
2023-01-14 07:00:22 +00:00
|
|
|
: ${SEAHUB_TEST_USERNAME="test@example.com"}
|
2014-09-06 03:38:20 +00:00
|
|
|
: ${SEAHUB_TEST_PASSWORD="testtest"}
|
2023-01-14 07:00:22 +00:00
|
|
|
: ${SEAHUB_TEST_ADMIN_USERNAME="admin@example.com"}
|
2014-09-06 03:38:20 +00:00
|
|
|
: ${SEAHUB_TEST_ADMIN_PASSWORD="adminadmin"}
|
|
|
|
|
|
|
|
export SEAHUB_TEST_USERNAME
|
|
|
|
export SEAHUB_TEST_PASSWORD
|
|
|
|
export SEAHUB_TEST_ADMIN_USERNAME
|
|
|
|
export SEAHUB_TEST_ADMIN_PASSWORD
|
2014-08-19 08:43:47 +00:00
|
|
|
|
|
|
|
# If you run this script on your local machine, you must set CCNET_CONF_DIR
|
|
|
|
# and SEAFILE_CONF_DIR like this:
|
|
|
|
#
|
|
|
|
# export CCNET_CONF_DIR=/your/path/to/ccnet
|
|
|
|
# export SEAFILE_CONF_DIR=/your/path/to/seafile-data
|
|
|
|
#
|
|
|
|
|
|
|
|
set -e
|
2014-08-19 09:46:48 +00:00
|
|
|
if [[ ${TRAVIS} != "" ]]; then
|
|
|
|
set -x
|
|
|
|
fi
|
2014-08-19 08:43:47 +00:00
|
|
|
|
2015-03-03 08:35:00 +00:00
|
|
|
set -x
|
2019-09-11 03:46:43 +00:00
|
|
|
SEAHUB_TESTSDIR=$(python -c "import os; print(os.path.dirname(os.path.realpath('$0')))")
|
2014-08-19 08:43:47 +00:00
|
|
|
SEAHUB_SRCDIR=$(dirname "${SEAHUB_TESTSDIR}")
|
|
|
|
|
2019-06-27 02:59:16 +00:00
|
|
|
export SEAHUB_LOG_DIR='/tmp/logs'
|
2022-12-20 06:13:19 +00:00
|
|
|
export PYTHONPATH="/usr/local/lib/python3.8/site-packages:/usr/local/lib/python3.8/dist-packages:/usr/lib/python3.8/site-packages:/usr/lib/python3.8/dist-packages:${SEAHUB_SRCDIR}/thirdpart:${PYTHONPATH}"
|
2014-08-19 08:43:47 +00:00
|
|
|
cd "$SEAHUB_SRCDIR"
|
2015-03-03 08:35:00 +00:00
|
|
|
set +x
|
2014-08-19 08:43:47 +00:00
|
|
|
|
2014-08-18 08:04:23 +00:00
|
|
|
function init() {
|
2024-10-18 10:03:02 +00:00
|
|
|
|
|
|
|
# fix FILE_SERVER_ROOT in test
|
|
|
|
sed -i 's/^FILE_SERVER_ROOT = SERVICE_URL/# FILE_SERVER_ROOT = SERVICE_URL/' seahub/settings.py
|
|
|
|
|
2014-08-19 08:43:47 +00:00
|
|
|
###############################
|
2014-09-05 02:37:29 +00:00
|
|
|
# create database and two new users: an admin, and a normal user
|
2014-08-19 08:43:47 +00:00
|
|
|
###############################
|
2019-09-11 03:46:43 +00:00
|
|
|
$PYTHON ./manage.py makemigrations
|
2018-03-19 06:02:54 +00:00
|
|
|
$PYTHON ./manage.py migrate --noinput
|
2014-09-05 02:37:29 +00:00
|
|
|
|
|
|
|
# create normal user
|
2020-12-15 05:18:57 +00:00
|
|
|
$PYTHON -c "import os; from seaserv import ccnet_api; ccnet_api.add_emailuser('${SEAHUB_TEST_USERNAME}', '${SEAHUB_TEST_PASSWORD}', 0, 1);"
|
2014-09-05 02:37:29 +00:00
|
|
|
# create admin
|
2020-12-15 05:18:57 +00:00
|
|
|
$PYTHON -c "import os; from seaserv import ccnet_api; ccnet_api.add_emailuser('${SEAHUB_TEST_ADMIN_USERNAME}', '${SEAHUB_TEST_ADMIN_PASSWORD}', 1, 1);"
|
2014-09-06 03:53:46 +00:00
|
|
|
|
2014-08-19 08:43:47 +00:00
|
|
|
}
|
2014-08-18 08:04:23 +00:00
|
|
|
|
2014-08-19 08:43:47 +00:00
|
|
|
function start_seahub() {
|
2019-06-27 02:59:16 +00:00
|
|
|
$PYTHON ./manage.py runserver 1>/tmp/logs/seahub.access.log 2>&1 &
|
2014-08-27 03:08:39 +00:00
|
|
|
sleep 5
|
2014-08-18 08:04:23 +00:00
|
|
|
}
|
2014-08-19 08:43:47 +00:00
|
|
|
|
2018-08-08 02:22:26 +00:00
|
|
|
function make_dist() {
|
|
|
|
echo "Making dist files ..."
|
|
|
|
|
|
|
|
make dist
|
|
|
|
}
|
|
|
|
|
2014-08-19 08:56:40 +00:00
|
|
|
function run_tests() {
|
2014-09-06 04:37:52 +00:00
|
|
|
set +e
|
2015-05-15 03:23:56 +00:00
|
|
|
py.test $nose_opts tests
|
2014-09-06 04:37:52 +00:00
|
|
|
rvalue=$?
|
2019-09-11 03:46:43 +00:00
|
|
|
|
|
|
|
# ignore 120 exited code in python3.6
|
|
|
|
if [[ $rvalue == 120 ]]; then
|
|
|
|
rvalue=0
|
|
|
|
fi
|
|
|
|
|
2020-06-08 13:12:59 +00:00
|
|
|
# if [[ ${TRAVIS} != "" ]]; then
|
|
|
|
# # On travis-ci, dump seahub logs when test finished
|
|
|
|
# for logfile in /tmp/logs/*.log; do
|
|
|
|
# echo -e "\nLog file $logfile:\n"
|
|
|
|
# cat "${logfile}"
|
|
|
|
# echo
|
|
|
|
# done
|
|
|
|
# fi
|
2014-09-06 04:37:52 +00:00
|
|
|
exit $rvalue
|
2014-08-18 08:04:23 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
case $1 in
|
|
|
|
"init")
|
|
|
|
init
|
|
|
|
;;
|
2014-08-19 09:01:31 +00:00
|
|
|
"runserver")
|
2014-08-19 08:43:47 +00:00
|
|
|
start_seahub
|
2014-08-19 09:01:31 +00:00
|
|
|
;;
|
2018-08-08 02:22:26 +00:00
|
|
|
"dist")
|
|
|
|
make_dist
|
|
|
|
;;
|
2014-08-19 09:01:31 +00:00
|
|
|
"test")
|
2014-09-06 03:38:20 +00:00
|
|
|
shift
|
2014-09-06 04:37:52 +00:00
|
|
|
nose_opts=$*
|
2014-08-19 08:56:40 +00:00
|
|
|
run_tests
|
2014-08-18 08:04:23 +00:00
|
|
|
;;
|
|
|
|
*)
|
2014-08-19 08:43:47 +00:00
|
|
|
echo "unknow command \"$1\""
|
2014-08-18 08:04:23 +00:00
|
|
|
;;
|
|
|
|
esac
|