#!/bin/bash # # ownCloud # # @author Vincent Petry # @author Morris Jobke # @author Robin McCorkell # @author Thomas Müller # @author Andreas Fischer # @author Joas Schilling # @author Lukas Reschke # @copyright 2012-2015 Thomas Müller thomas.mueller@tmit.eu # set -e #$EXECUTOR_NUMBER is set by Jenkins and allows us to run autotest in parallel DATABASENAME=oc_autotest$EXECUTOR_NUMBER DATABASEUSER=oc_autotest$EXECUTOR_NUMBER DATABASEHOST=localhost ADMINLOGIN=admin$EXECUTOR_NUMBER BASEDIR=$PWD DBCONFIGS="sqlite mysql pgsql oci" PHPUNIT=$(which phpunit) function print_syntax { echo -e "Syntax: ./autotest.sh [dbconfigname] [testfile]\n" >&2 echo -e "\t\"dbconfigname\" can be one of: $DBCONFIGS" >&2 echo -e "\t\"testfile\" is the name of a test file, for example lib/template.php" >&2 echo -e "\nExample: ./autotest.sh sqlite lib/template.php" >&2 echo "will run the test suite from \"tests/lib/template.php\"" >&2 echo -e "\nIf no arguments are specified, all tests will be run with all database configs" >&2 } if ! [ -x "$PHPUNIT" ]; then echo "phpunit executable not found, please install phpunit version >= 3.7" >&2 exit 3 fi PHPUNIT_VERSION=$("$PHPUNIT" --version | cut -d" " -f2) PHPUNIT_MAJOR_VERSION=$(echo $PHPUNIT_VERSION | cut -d"." -f1) PHPUNIT_MINOR_VERSION=$(echo $PHPUNIT_VERSION | cut -d"." -f2) if ! [ $PHPUNIT_MAJOR_VERSION -gt 3 -o \( $PHPUNIT_MAJOR_VERSION -eq 3 -a $PHPUNIT_MINOR_VERSION -ge 7 \) ]; then echo "phpunit version >= 3.7 required. Version found: $PHPUNIT_VERSION" >&2 exit 4 fi if ! [ \( -w config -a ! -f config/config.php \) -o \( -f config/config.php -a -w config/config.php \) ]; then echo "Please enable write permissions on config and config/config.php" >&2 exit 1 fi 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 # Back up existing (dev) config if one exists and backup not already there if [ -f config/config.php ] && [ ! -f config/config-autotest-backup.php ]; then mv config/config.php config/config-autotest-backup.php fi function cleanup_config { if [ ! -z "$DOCKER_CONTAINER_ID" ]; then echo "Kill the docker $DOCKER_CONTAINER_ID" docker rm -f $DOCKER_CONTAINER_ID fi cd "$BASEDIR" # Restore existing config if [ -f config/config-autotest-backup.php ]; then mv config/config-autotest-backup.php config/config.php fi # Remove autotest config if [ -f config/autoconfig.php ]; then rm config/autoconfig.php fi } # restore config on exit trap cleanup_config EXIT # use tmpfs for datadir - should speedup unit test execution if [ -d /dev/shm ]; then DATADIR=/dev/shm/data-autotest$EXECUTOR_NUMBER else DATADIR=$BASEDIR/data-autotest fi echo "Using database $DATABASENAME" function execute_tests { 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" cp tests/preseed-config.php config/config.php # drop database if [ "$1" == "mysql" ] ; then mysql -u $DATABASEUSER -powncloud -e "DROP DATABASE IF EXISTS $DATABASENAME" || true fi if [ "$1" == "pgsql" ] ; then dropdb -U $DATABASEUSER $DATABASENAME || true fi if [ "$1" == "oci" ] ; then echo "Fire up the oracle docker" DOCKER_CONTAINER_ID=`docker run -d deepdiver/docker-oracle-xe-11g` DATABASEHOST=`docker inspect $DOCKER_CONTAINER_ID | grep IPAddress | cut -d '"' -f 4` echo "Waiting 60 seconds for Oracle initialization ... " sleep 60 DATABASEUSER=autotest DATABASENAME='XE' fi # trigger installation echo "Installing ...." ./occ maintenance:install --database=$1 --database-name=$DATABASENAME --database-host=$DATABASEHOST --database-user=$DATABASEUSER --database-pass=owncloud --database-table-prefix=oc_ --admin-user=$ADMINLOGIN --admin-pass=admin --data-dir=$DATADIR #test execution echo "Testing with $1 ..." cd tests rm -rf "coverage-html-$1" mkdir "coverage-html-$1" php -f enable_all.php | grep -i -C9999 error && echo "Error during setup" && exit 101 if [ -z "$NOCOVERAGE" ]; then "$PHPUNIT" --configuration phpunit-autotest.xml --log-junit "autotest-results-$1.xml" --coverage-clover "autotest-clover-$1.xml" --coverage-html "coverage-html-$1" "$2" "$3" RESULT=$? else echo "No coverage" "$PHPUNIT" --configuration phpunit-autotest.xml --log-junit "autotest-results-$1.xml" "$2" "$3" RESULT=$? fi } # # start test execution # if [ -z "$1" ] then # run all known database configs for DBCONFIG in $DBCONFIGS; do execute_tests $DBCONFIG done else FILENAME="$2" if [ ! -z "$2" ] && [ ! -f "tests/$FILENAME" ]; then FILENAME="../$FILENAME" fi execute_tests "$1" "$FILENAME" "$3" fi # # 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 # d_file Nextcloud server, a safe home for all your data: https://github.com/nextcloud/serverwww-data
summaryrefslogtreecommitdiffstats
path: root/apps/files/l10n/zh_CN.json
blob: 60db09ade1ab677019a48f37716e011c79b28dfe (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133