Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/richdocuments.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorVictor Dubiniuk <victor.dubiniuk@gmail.com>2014-10-29 19:27:53 +0300
committerVictor Dubiniuk <victor.dubiniuk@gmail.com>2014-11-03 23:58:05 +0300
commit72a5662f598aa95effabee8ef08c75ab9eebea5d (patch)
tree62bd5311a4ce4efe45157cc510e1f38cc44812ad /tests
parent4330383b9559c570f2afdf86064aafe02a938138 (diff)
Let the battle begin
Diffstat (limited to 'tests')
-rw-r--r--tests/bootstrap.php1
-rwxr-xr-xtests/env_setup.sh144
2 files changed, 144 insertions, 1 deletions
diff --git a/tests/bootstrap.php b/tests/bootstrap.php
index e69f5862..57bf2fa0 100644
--- a/tests/bootstrap.php
+++ b/tests/bootstrap.php
@@ -6,7 +6,6 @@ $RUNTIME_NOAPPS = true;
define('PHPUNIT_RUN', 1);
require_once __DIR__.'/../../../lib/base.php';
-require_once __DIR__.'/../vendor/autoload.php';
if(!class_exists('PHPUnit_Framework_TestCase')) {
require_once('PHPUnit/Autoload.php');
diff --git a/tests/env_setup.sh b/tests/env_setup.sh
new file mode 100755
index 00000000..64cb96f0
--- /dev/null
+++ b/tests/env_setup.sh
@@ -0,0 +1,144 @@
+#!/bin/bash
+#
+# ownCloud
+
+BASEDIR=$PWD
+
+if [ "$DB" == "mysql" ] ; then
+ DATABASENAME=documents_test
+ DATABASEUSER=documents_test
+ ADMINLOGIN=travis
+ mysql -e 'CREATE DATABASE IF NOT EXISTS documents_test'
+ mysql -e "UPDATE mysql.user SET Password=PASSWORD('travis') WHERE User='travis' AND Host='localhost';"
+ mysql -e "FLUSH PRIVILEGES;"
+fi
+
+if [ "$DB" == "sqlite" ] ; then
+ DATABASENAME=documents_test
+ DATABASEUSER=documents_test
+ ADMINLOGIN=oc_autotest
+fi
+
+DATADIR=$BASEDIR/data-autotest
+
+echo "Using database $DATABASENAME with $DB"
+
+# create autoconfig for sqlite, mysql and postgresql
+cat > $BASEDIR/tests/autoconfig-sqlite.php <<DELIM
+<?php
+\$AUTOCONFIG = array (
+ 'installed' => false,
+ 'dbtype' => 'sqlite',
+ 'dbtableprefix' => 'oc_',
+ 'adminlogin' => '$ADMINLOGIN',
+ 'adminpass' => 'admin',
+ 'directory' => '$DATADIR',
+);
+DELIM
+
+cat > $BASEDIR/tests/autoconfig-mysql.php <<DELIM
+<?php
+\$AUTOCONFIG = array (
+ 'installed' => false,
+ 'dbtype' => 'mysql',
+ 'dbtableprefix' => 'oc_',
+ 'adminlogin' => '$ADMINLOGIN',
+ 'adminpass' => 'travis',
+ 'directory' => '$DATADIR',
+ 'dbuser' => 'travis',
+ 'dbname' => '$DATABASENAME',
+ 'dbhost' => 'localhost',
+ 'dbpass' => 'travis',
+);
+DELIM
+
+cat > $BASEDIR/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' => 'localhost',
+ 'dbpass' => 'owncloud',
+);
+DELIM
+
+function setup_db {
+ echo "Setup environment for $DB testing ..."
+ # back to root folder
+ cd $BASEDIR
+
+ # reset data directory
+ rm -rf $DATADIR
+ mkdir $DATADIR
+
+ #rm -rf config/config.php
+ cp $BASEDIR/tests/preseed-config.php $BASEDIR/../core/config/config.php
+
+ # copy autoconfig
+ cat $BASEDIR/tests/autoconfig-$DB.php
+ cp $BASEDIR/tests/autoconfig-$DB.php $BASEDIR/../core/config/autoconfig.php
+ ls -l $BASEDIR/../core/config/
+
+ # trigger installation
+ cd $BASEDIR/../core/
+ php -f index.php
+ cd -
+
+ #test execution
+ echo "Testing with $DB ..."
+ cd tests
+}
+
+#
+# start test execution
+#
+setup_db '$DB'
+
+ls $BASEDIR/tests/
+ls $BASEDIR/../core/config/
+cat $BASEDIR/../core/config/config.php
+#ls $BASEDIR/../core/data/
+#cat $BASEDIR/../core/data/owncloud.log
+
+#
+# NOTES on mysql:
+# - CREATE DATABASE oc_autotest;
+# - CREATE USER 'oc_autotest'@'localhost' IDENTIFIED BY 'owncloud';
+# - grant all on oc_autotest.* to 'oc_autotest'@'localhost';
+#
+# - for parallel executor support with EXECUTOR_NUMBER=0:
+# - CREATE DATABASE oc_autotest0;
+# - CREATE USER 'oc_autotest0'@'localhost' IDENTIFIED BY 'owncloud';
+# - grant all on oc_autotest0.* to 'oc_autotest0'@'localhost';
+#
+# NOTES on pgsql:
+# - su - postgres
+# - createuser -P oc_autotest (enter password and enable superuser)
+# - to enable dropdb I decided to add following line to pg_hba.conf (this is not the safest way but I don't care for the testing machine):
+# local all all trust
+#
+# - for parallel executor support with EXECUTOR_NUMBER=0:
+# - createuser -P oc_autotest0 (enter password and enable superuser)
+#
+# NOTES on oci:
+# - it's a pure nightmare to install Oracle on a Linux-System
+# - DON'T TRY THIS AT HOME!
+# - if you really need it: we feel sorry for you
+#
+
+cd $BASEDIR
+cd ..
+git clone https://github.com/owncloud/core
+cd core
+git submodule update --init
+mkdir apps2
+ln -s $BASEDIR apps2
+cd -
+
+cd $BASEDIR \ No newline at end of file