diff options
author | Jonas <jonas@freesources.org> | 2022-02-08 15:49:31 +0300 |
---|---|---|
committer | Jonas <jonas@freesources.org> | 2022-02-08 17:00:01 +0300 |
commit | 809226b4e967636977756c3af35ec2fbb9c4146b (patch) | |
tree | 6617c1168f036dcc52fe1c7efc9081f9976d0b65 /tests | |
parent | b73651e1060da43b8f3d9db154530c6ade1da123 (diff) |
Migrate phpunit tests from drone to github actions (Fixes: #1679)
Only test with sqlite and oc for now. There's no added value to run our
basic phpunit test on mysql and postgresql environments.
Also drops the obsolete `occ app:check-code` compatibility tests.
Signed-off-by: Jonas <jonas@freesources.org>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/drone-server-install.sh | 138 | ||||
-rw-r--r-- | tests/drone-server-setup.sh | 65 |
2 files changed, 0 insertions, 203 deletions
diff --git a/tests/drone-server-install.sh b/tests/drone-server-install.sh deleted file mode 100644 index 65559056f..000000000 --- a/tests/drone-server-install.sh +++ /dev/null @@ -1,138 +0,0 @@ -#!/bin/bash -# TODO: move this out of the repo to make it usable in other apps - -set -e - -DATABASENAME=oc_autotest -DATABASEUSER=oc_autotest -[ -z "$DATABASEHOST" ] && DATABASEHOST="localhost" -ADMINLOGIN=admin -BASEDIR=$PWD - -DBCONFIGS="sqlite mysql pgsql oracle" -PHPUNIT=$(which phpunit) - -if [ $1 ]; then - FOUND=0 - for DBCONFIG in $DBCONFIGS; do - if [ $1 = $DBCONFIG ]; then - FOUND=1 - break - fi - done - if [ $FOUND = 0 ]; then - echo -e "Unknown database config name \"$1\"\n" >&2 - print_syntax - exit 2 - fi -fi - -# use tmpfs for datadir - should speedup unit test execution -DATADIR=$BASEDIR/data-autotest - -echo "Using $1 database $DATABASENAME" - -# create autoconfig for sqlite, mysql and postgresql -cat > ./tests/autoconfig-sqlite.php <<DELIM -<?php -\$AUTOCONFIG = array ( - 'installed' => false, - 'dbtype' => 'sqlite', - 'dbtableprefix' => 'oc_', - 'adminlogin' => '$ADMINLOGIN', - 'adminpass' => 'admin', - 'directory' => '$DATADIR', -); -DELIM - -cat > ./tests/autoconfig-mysql.php <<DELIM -<?php -\$AUTOCONFIG = array ( - 'installed' => false, - 'dbtype' => 'mysql', - 'dbtableprefix' => 'oc_', - 'adminlogin' => '$ADMINLOGIN', - 'adminpass' => 'admin', - 'directory' => '$DATADIR', - 'dbuser' => '$DATABASEUSER', - 'dbname' => '$DATABASENAME', - 'dbhost' => '$DATABASEHOST', - 'dbpass' => 'owncloud', -); -DELIM - -cat > ./tests/autoconfig-pgsql.php <<DELIM -<?php -\$AUTOCONFIG = array ( - 'installed' => false, - 'dbtype' => 'pgsql', - 'dbtableprefix' => 'oc_', - 'adminlogin' => '$ADMINLOGIN', - 'adminpass' => 'admin', - 'directory' => '$DATADIR', - 'dbuser' => '$DATABASEUSER', - 'dbname' => '$DATABASENAME', - 'dbhost' => '$DATABASEHOST', - 'dbpass' => 'owncloud', -); -DELIM - -cat > ./tests/autoconfig-oracle.php <<DELIM -<?php -\$AUTOCONFIG = array ( - 'installed' => false, - 'dbtype' => 'oci', - 'dbtableprefix' => 'oc_', - 'adminlogin' => '$ADMINLOGIN', - 'adminpass' => 'admin', - 'directory' => '$DATADIR', - 'dbuser' => 'autotest', - 'dbname' => 'XE', - 'dbhost' =>'$DATABASEHOST', - 'dbpass' => 'owncloud', - 'loglevel' => 0, -); -DELIM - -function run_install { - echo "Setup environment for $1 testing ..." - # back to root folder - cd $BASEDIR - - # revert changes to tests/data - git checkout tests/data/* - - # reset data directory - rm -rf $DATADIR - mkdir $DATADIR - touch $DATADIR/nextcloud.log - - cp tests/preseed-config.php config/config.php - - # copy autoconfig - cp $BASEDIR/tests/autoconfig-$1.php $BASEDIR/config/autoconfig.php - - # trigger installation - echo "INDEX" - php -f index.php - echo "END INDEX" - -} - -function print_config { - - echo "nextcloud configuration:" - cat $BASEDIR/config/config.php - - echo "data directory:" - ls -ll $DATADIR - - echo "nextcloud.log:" - [[ -f "$DATADIR/nextcloud.log" ]] && cat $DATADIR/nextcloud.log - -} - -run_install $1 -print_config - -cd $BASEDIR
\ No newline at end of file diff --git a/tests/drone-server-setup.sh b/tests/drone-server-setup.sh deleted file mode 100644 index 8d754c65b..000000000 --- a/tests/drone-server-setup.sh +++ /dev/null @@ -1,65 +0,0 @@ -#!/bin/bash -# -# ownCloud -# -# @author Thomas Müller -# @copyright 2014 Thomas Müller thomas.mueller@tmit.eu -# - -# TODO: move this out of the repo to make it usable in other apps - -set -e - -WORKDIR=$PWD -APP_NAME=$1 -CORE_BRANCH=$2 -DB=$3 -echo "Work directory: $WORKDIR" -echo "Database: $DB" - -# Cloning server -cd .. -git clone --depth 1 -b $CORE_BRANCH https://github.com/nextcloud/server -cd server -git submodule update --init - -# Move app into apps folder -cd apps -cp -R $WORKDIR/ $APP_NAME -cd $WORKDIR - -[[ -z "$DATABASEHOST" ]] && DATABASEHOST="$DB" - -if [[ "$DB" == "mysql" ]] ; then - echo "Waiting for MySQL initialisation ..." - if ! ../server/apps/files_external/tests/env/wait-for-connection $DATABASEHOST 3306 600; then - echo "[ERROR] Waited 600 seconds, no response" >&2 - exit 1 - fi -fi - -if [[ "$DB" == "postgres" ]] ; then - echo "Waiting for Postgres to be available ..." - if ! ../server/apps/files_external/tests/env/wait-for-connection $DATABASEHOST 5432 60; then - echo "[ERROR] Waited 60 seconds for $DATABASEHOST, no response" >&2 - exit 1 - fi - echo "Give it 10 additional seconds ..." - sleep 10 - # Temporary fix since core_install uses pgsql - DB="pgsql" -fi - -# TODO: oracle -export DATABASEHOST="$DATABASEHOST" - -echo "Installing server" -cd ../server -bash $WORKDIR/tests/drone-server-install.sh $DB - -echo "Installing app: $APP_NAME" -php occ app:enable $APP_NAME - -cd apps/$APP_NAME -pwd -ls /drone/src |