diff --git a/src/Symfony/Component/HttpKernel/Tests/Profiler/FileProfilerStorageTest.php b/src/Symfony/Component/HttpKernel/Tests/Profiler/FileProfilerStorageTest.php index d5edc70032..084ce1120d 100644 --- a/src/Symfony/Component/HttpKernel/Tests/Profiler/FileProfilerStorageTest.php +++ b/src/Symfony/Component/HttpKernel/Tests/Profiler/FileProfilerStorageTest.php @@ -16,13 +16,13 @@ use Symfony\Component\HttpKernel\Profiler\Profile; class FileProfilerStorageTest extends AbstractProfilerStorageTest { - protected static $tmpDir; - protected static $storage; + private $tmpDir; + private $storage; - protected static function cleanDir() + protected function cleanDir() { $flags = \FilesystemIterator::SKIP_DOTS; - $iterator = new \RecursiveDirectoryIterator(self::$tmpDir, $flags); + $iterator = new \RecursiveDirectoryIterator($this->tmpDir, $flags); $iterator = new \RecursiveIteratorIterator($iterator, \RecursiveIteratorIterator::SELF_FIRST); foreach ($iterator as $file) { @@ -32,23 +32,19 @@ class FileProfilerStorageTest extends AbstractProfilerStorageTest } } - public static function setUpBeforeClass() - { - self::$tmpDir = sys_get_temp_dir().'/sf2_profiler_file_storage'; - if (is_dir(self::$tmpDir)) { - self::cleanDir(); - } - self::$storage = new FileProfilerStorage('file:'.self::$tmpDir); - } - - public static function tearDownAfterClass() - { - self::cleanDir(); - } - protected function setUp() { - self::$storage->purge(); + $this->tmpDir = sys_get_temp_dir().'/sf2_profiler_file_storage'; + if (is_dir($this->tmpDir)) { + self::cleanDir(); + } + $this->storage = new FileProfilerStorage('file:'.$this->tmpDir); + $this->storage->purge(); + } + + protected function tearDown() + { + self::cleanDir(); } /** @@ -56,7 +52,7 @@ class FileProfilerStorageTest extends AbstractProfilerStorageTest */ protected function getStorage() { - return self::$storage; + return $this->storage; } public function testMultiRowIndexFile() @@ -73,7 +69,7 @@ class FileProfilerStorageTest extends AbstractProfilerStorageTest $storage->write($profile); } - $handle = fopen(self::$tmpDir.'/index.csv', 'r'); + $handle = fopen($this->tmpDir.'/index.csv', 'r'); for ($i = 0; $i < $iteration; ++$i) { $row = fgetcsv($handle); $this->assertEquals('token'.$i, $row[0]); @@ -85,7 +81,7 @@ class FileProfilerStorageTest extends AbstractProfilerStorageTest public function testReadLineFromFile() { - $r = new \ReflectionMethod(self::$storage, 'readLineFromFile'); + $r = new \ReflectionMethod($this->storage, 'readLineFromFile'); $r->setAccessible(true); @@ -94,7 +90,7 @@ class FileProfilerStorageTest extends AbstractProfilerStorageTest fwrite($h, "line1\n\n\nline2\n"); fseek($h, 0, SEEK_END); - $this->assertEquals('line2', $r->invoke(self::$storage, $h)); - $this->assertEquals('line1', $r->invoke(self::$storage, $h)); + $this->assertEquals('line2', $r->invoke($this->storage, $h)); + $this->assertEquals('line1', $r->invoke($this->storage, $h)); } } diff --git a/src/Symfony/Component/HttpKernel/Tests/Profiler/MongoDbProfilerStorageTest.php b/src/Symfony/Component/HttpKernel/Tests/Profiler/MongoDbProfilerStorageTest.php index 48615fa6a0..43c79d9cc6 100644 --- a/src/Symfony/Component/HttpKernel/Tests/Profiler/MongoDbProfilerStorageTest.php +++ b/src/Symfony/Component/HttpKernel/Tests/Profiler/MongoDbProfilerStorageTest.php @@ -17,14 +17,6 @@ use Symfony\Component\HttpKernel\DataCollector\DataCollector; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; -class DummyMongoDbProfilerStorage extends MongoDbProfilerStorage -{ - public function getMongo() - { - return parent::getMongo(); - } -} - class MongoDbProfilerStorageTestDataCollector extends DataCollector { public function setData($data) @@ -52,27 +44,7 @@ class MongoDbProfilerStorageTestDataCollector extends DataCollector */ class MongoDbProfilerStorageTest extends AbstractProfilerStorageTest { - protected static $storage; - - public static function setUpBeforeClass() - { - if (extension_loaded('mongo')) { - self::$storage = new DummyMongoDbProfilerStorage('mongodb://localhost/symfony_tests/profiler_data', '', '', 86400); - try { - self::$storage->getMongo(); - } catch (\MongoConnectionException $e) { - self::$storage = null; - } - } - } - - public static function tearDownAfterClass() - { - if (self::$storage) { - self::$storage->purge(); - self::$storage = null; - } - } + private $storage; public function getDsns() { @@ -108,12 +80,12 @@ class MongoDbProfilerStorageTest extends AbstractProfilerStorageTest $profile = new Profile('time_'.$i); $profile->setTime($dt->getTimestamp()); $profile->setMethod('GET'); - self::$storage->write($profile); + $this->storage->write($profile); } - $records = self::$storage->find('', '', 3, 'GET'); + $records = $this->storage->find('', '', 3, 'GET'); $this->assertCount(1, $records, '->find() returns only one record'); $this->assertEquals($records[0]['token'], 'time_2', '->find() returns the latest added record'); - self::$storage->purge(); + $this->storage->purge(); } /** @@ -121,10 +93,10 @@ class MongoDbProfilerStorageTest extends AbstractProfilerStorageTest */ public function testDsnParser($dsn, $expected) { - $m = new \ReflectionMethod(self::$storage, 'parseDsn'); + $m = new \ReflectionMethod($this->storage, 'parseDsn'); $m->setAccessible(true); - $this->assertEquals($expected, $m->invoke(self::$storage, $dsn)); + $this->assertEquals($expected, $m->invoke($this->storage, $dsn)); } public function testUtf8() @@ -139,9 +111,9 @@ class MongoDbProfilerStorageTest extends AbstractProfilerStorageTest $profile->setCollectors(array($collector)); - self::$storage->write($profile); + $this->storage->write($profile); - $readProfile = self::$storage->read('utf8_test_profile'); + $readProfile = $this->storage->read('utf8_test_profile'); $collectors = $readProfile->getCollectors(); $this->assertCount(1, $collectors); @@ -154,15 +126,31 @@ class MongoDbProfilerStorageTest extends AbstractProfilerStorageTest */ protected function getStorage() { - return self::$storage; + return $this->storage; } protected function setUp() { - if (self::$storage) { - self::$storage->purge(); - } else { + if (!extension_loaded('mongo')) { $this->markTestSkipped('MongoDbProfilerStorageTest requires the mongo PHP extension and a MongoDB server on localhost'); } + + $this->storage = new MongoDbProfilerStorage('mongodb://localhost/symfony_tests/profiler_data', '', '', 86400); + $m = new \ReflectionMethod($this->storage, 'getMongo'); + $m->setAccessible(true); + try { + $m->invoke($this->storage); + } catch (\MongoConnectionException $e) { + $this->storage = null; + } + + $this->storage->purge(); + } + + protected function tearDown() + { + if ($this->storage) { + $this->storage->purge(); + } } } diff --git a/src/Symfony/Component/HttpKernel/Tests/Profiler/SqliteProfilerStorageTest.php b/src/Symfony/Component/HttpKernel/Tests/Profiler/SqliteProfilerStorageTest.php index d99f025b4a..8f91ac1ac5 100644 --- a/src/Symfony/Component/HttpKernel/Tests/Profiler/SqliteProfilerStorageTest.php +++ b/src/Symfony/Component/HttpKernel/Tests/Profiler/SqliteProfilerStorageTest.php @@ -18,29 +18,27 @@ use Symfony\Component\HttpKernel\Profiler\SqliteProfilerStorage; */ class SqliteProfilerStorageTest extends AbstractProfilerStorageTest { - protected static $dbFile; - protected static $storage; - - public static function setUpBeforeClass() - { - self::$dbFile = tempnam(sys_get_temp_dir(), 'sf2_sqlite_storage'); - if (file_exists(self::$dbFile)) { - @unlink(self::$dbFile); - } - self::$storage = new SqliteProfilerStorage('sqlite:'.self::$dbFile); - } - - public static function tearDownAfterClass() - { - @unlink(self::$dbFile); - } + private $dbFile; + private $storage; protected function setUp() { if (!class_exists('SQLite3') && (!class_exists('PDO') || !in_array('sqlite', \PDO::getAvailableDrivers()))) { $this->markTestSkipped('This test requires SQLite support in your environment'); } - self::$storage->purge(); + + $this->dbFile = tempnam(sys_get_temp_dir(), 'sf2_sqlite_storage'); + if (file_exists($this->dbFile)) { + @unlink($this->dbFile); + } + $this->storage = new SqliteProfilerStorage('sqlite:'.$this->dbFile); + + $this->storage->purge(); + } + + protected function tearDown() + { + @unlink($this->dbFile); } /** @@ -48,6 +46,6 @@ class SqliteProfilerStorageTest extends AbstractProfilerStorageTest */ protected function getStorage() { - return self::$storage; + return $this->storage; } }