xref: /plugin/davcal/vendor/sabre/dav/tests/Sabre/TestUtil.php (revision a1a3b6794e0e143a4a8b51d3185ce2d339be61ab)
1*a1a3b679SAndreas Boehler<?php
2*a1a3b679SAndreas Boehler
3*a1a3b679SAndreas Boehlernamespace Sabre;
4*a1a3b679SAndreas Boehler
5*a1a3b679SAndreas Boehlerclass TestUtil {
6*a1a3b679SAndreas Boehler
7*a1a3b679SAndreas Boehler    /**
8*a1a3b679SAndreas Boehler     * This function deletes all the contents of the temporary directory.
9*a1a3b679SAndreas Boehler     *
10*a1a3b679SAndreas Boehler     * @return void
11*a1a3b679SAndreas Boehler     */
12*a1a3b679SAndreas Boehler    static function clearTempDir() {
13*a1a3b679SAndreas Boehler
14*a1a3b679SAndreas Boehler        self::deleteTree(SABRE_TEMPDIR,false);
15*a1a3b679SAndreas Boehler
16*a1a3b679SAndreas Boehler    }
17*a1a3b679SAndreas Boehler
18*a1a3b679SAndreas Boehler
19*a1a3b679SAndreas Boehler    static private function deleteTree($path,$deleteRoot = true) {
20*a1a3b679SAndreas Boehler
21*a1a3b679SAndreas Boehler        foreach(scandir($path) as $node) {
22*a1a3b679SAndreas Boehler
23*a1a3b679SAndreas Boehler            if ($node=='.' || $node=='..') continue;
24*a1a3b679SAndreas Boehler            $myPath = $path.'/'. $node;
25*a1a3b679SAndreas Boehler            if (is_file($myPath)) {
26*a1a3b679SAndreas Boehler                unlink($myPath);
27*a1a3b679SAndreas Boehler            } else {
28*a1a3b679SAndreas Boehler                self::deleteTree($myPath);
29*a1a3b679SAndreas Boehler            }
30*a1a3b679SAndreas Boehler
31*a1a3b679SAndreas Boehler        }
32*a1a3b679SAndreas Boehler        if ($deleteRoot) {
33*a1a3b679SAndreas Boehler            rmdir($path);
34*a1a3b679SAndreas Boehler        }
35*a1a3b679SAndreas Boehler
36*a1a3b679SAndreas Boehler    }
37*a1a3b679SAndreas Boehler
38*a1a3b679SAndreas Boehler    static function getMySQLDB() {
39*a1a3b679SAndreas Boehler
40*a1a3b679SAndreas Boehler        try {
41*a1a3b679SAndreas Boehler            $pdo = new \PDO(SABRE_MYSQLDSN,SABRE_MYSQLUSER,SABRE_MYSQLPASS);
42*a1a3b679SAndreas Boehler            $pdo->setAttribute(\PDO::ATTR_ERRMODE,\PDO::ERRMODE_EXCEPTION);
43*a1a3b679SAndreas Boehler            return $pdo;
44*a1a3b679SAndreas Boehler        } catch (\PDOException $e) {
45*a1a3b679SAndreas Boehler            return null;
46*a1a3b679SAndreas Boehler        }
47*a1a3b679SAndreas Boehler
48*a1a3b679SAndreas Boehler    }
49*a1a3b679SAndreas Boehler
50*a1a3b679SAndreas Boehler    static function getSQLiteDB() {
51*a1a3b679SAndreas Boehler
52*a1a3b679SAndreas Boehler        $pdo = new \PDO('sqlite:'.SABRE_TEMPDIR.'/pdobackend');
53*a1a3b679SAndreas Boehler        $pdo->setAttribute(\PDO::ATTR_ERRMODE,\PDO::ERRMODE_EXCEPTION);
54*a1a3b679SAndreas Boehler        return $pdo;
55*a1a3b679SAndreas Boehler
56*a1a3b679SAndreas Boehler    }
57*a1a3b679SAndreas Boehler
58*a1a3b679SAndreas Boehler}
59