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