aboutsummaryrefslogtreecommitdiffstats
path: root/autotest.sh
diff options
context:
space:
mode:
authorThomas Mueller <thomas.mueller@tmit.eu>2012-07-15 23:21:56 +0200
committerThomas Mueller <thomas.mueller@tmit.eu>2012-07-15 23:22:19 +0200
commit6bb3a281b1883c61b4e69f5d0840707f27b66277 (patch)
tree0c77bf2dec5cf11187d36be8e15ba17e9f05d302 /autotest.sh
parent72ebc2a32a80bfcca6323e2313b1a08ad07f5c54 (diff)
downloadnextcloud-server-6bb3a281b1883c61b4e69f5d0840707f27b66277.tar.gz
nextcloud-server-6bb3a281b1883c61b4e69f5d0840707f27b66277.zip
some more structure added
Diffstat (limited to 'autotest.sh')
-rwxr-xr-xautotest.sh100
1 files changed, 56 insertions, 44 deletions
diff --git a/autotest.sh b/autotest.sh
index 6863eec0320..fe55c1066da 100755
--- a/autotest.sh
+++ b/autotest.sh
@@ -1,56 +1,36 @@
+#!/bin/bash
#
-# sqlite testing now
+# ownCloud
#
-echo "Setup environment for sqlite testing ..."
+# @author Thomas Müller
+# @copyright 2012 Thomas Müller thomas.mueller@tmit.eu
+#
+
DATADIR=data-autotest
-rm -rf $DATADIR
-mkdir $DATADIR
-rm -rf config/config.php
-#cp autotest/config.sqlite.php config/autoconfig.php
-cat > ./config/autoconfig.php <<DELIM
+BASEDIR=$PWD
+
+# create autoconfig for sqlite, mysql and (soon) postgresql
+cat > ./tests/autoconfig-sqlite.php <<DELIM
<?php
\$AUTOCONFIG = array (
'installed' => false,
'dbtype' => 'sqlite',
'dbtableprefix' => 'oc_',
- 'datadirectory' => 'data',
'adminlogin' => 'admin',
'adminpass' => 'admin',
- 'directory' => '$PWD/$DATADIR',
+ 'directory' => '$BASEDIR/$DATADIR',
);
DELIM
-php -f index.php
-
-#test execution
-echo 'Testing with sqlite ...'
-cd tests
-php -f index.php -- xml > autotest-results-sqlite.xml
-cd ..
-git checkout tests/data/*
-
-#
-# mysql testing now
-#
-# NOTES:
-# - CREATE USER 'oc_autotest'@'localhost' IDENTIFIED BY 'owncloud';
-# - grant access permissions: grant all on oc_autotest.* to 'oc_autotest'@'localhost';
-#
-echo "Setup environment for MySql testing ..."
-DATADIR=data-autotest
-rm -rf $DATADIR
-mkdir $DATADIR
-rm -rf config/config.php
-cat > ./config/autoconfig.php <<DELIM
+cat > ./tests/autoconfig-mysql.php <<DELIM
<?php
\$AUTOCONFIG = array (
'installed' => false,
'dbtype' => 'mysql',
'dbtableprefix' => 'oc_',
- 'datadirectory' => 'data',
'adminlogin' => 'admin',
'adminpass' => 'admin',
- 'directory' => '$PWD/$DATADIR',
+ 'directory' => '$BASEDIR/$DATADIR',
'dbuser' => 'oc_autotest',
'dbname' => 'oc_autotest',
'dbhost' => 'localhost',
@@ -58,20 +38,52 @@ cat > ./config/autoconfig.php <<DELIM
);
DELIM
-#drop the database
-mysql -u oc_autotest -powncloud -e "DROP DATABASE oc_autotest"
-#setup
-php -f index.php
+function execute_tests {
+ echo "Setup environment for $1 testing ..."
+ # back to root folder
+ cd $BASEDIR
+ echo $BASEDIR
+
+ # revert changes to tests/data
+ git checkout tests/data/*
-#test execution
-echo 'Testing with MySql ...'
-cd tests
-php -f index.php -- xml > autotest-results-MySql.xml
-cd ..
-git checkout tests/data/*
+ # reset data directory
+ rm -rf $DATADIR
+ mkdir $DATADIR
+ # remove the old config file
+ rm -rf config/config.php
+
+ # drop database
+ if [ "$1" == "mysql" ] ; then
+ mysql -u oc_autotest -powncloud -e "DROP DATABASE oc_autotest"
+ fi
+
+ # copy autoconfig
+ cp $BASEDIR/tests/autoconfig-$1.php $BASEDIR/config/autoconfig.php
+
+ # trigger installation
+ php -f index.php
+
+ #test execution
+ echo "Testing with $1 ..."
+ cd tests
+ php -f index.php -- xml > autotest-results-$1.xml
+}
+
+#
+# start test execution
#
-# TODO: create config for postgres
+execute_tests "sqlite"
+execute_tests 'mysql'
+
+# TODO: implement this
+#execute_tests 'postgresql'
+
+#
+# NOTES:
+# - CREATE USER 'oc_autotest'@'localhost' IDENTIFIED BY 'owncloud';
+# - grant access permissions: grant all on oc_autotest.* to 'oc_autotest'@'localhost';
#