protected static function toAbsolute($files = null)
 {
     /*
      * Without the call to setUpBeforeClass() property can be null.
      */
     if (!self::$tmpDir) {
         self::$tmpDir = realpath(sys_get_temp_dir()) . DIRECTORY_SEPARATOR . 'symfony2_finder';
     }
     if (is_array($files)) {
         $f = array();
         foreach ($files as $file) {
             $f[] = self::$tmpDir . DIRECTORY_SEPARATOR . str_replace('/', DIRECTORY_SEPARATOR, $file);
         }
         return $f;
     }
     if (is_string($files)) {
         return self::$tmpDir . DIRECTORY_SEPARATOR . str_replace('/', DIRECTORY_SEPARATOR, $files);
     }
     return self::$tmpDir;
 }
 public static function setUpBeforeClass()
 {
     $tmpDir = sys_get_temp_dir() . '/symfony2_finder';
     self::$files = array($tmpDir . '/.git/', $tmpDir . '/.foo/', $tmpDir . '/.foo/.bar', $tmpDir . '/.foo/bar', $tmpDir . '/.bar', $tmpDir . '/test.py', $tmpDir . '/foo/', $tmpDir . '/foo/bar.tmp', $tmpDir . '/test.php', $tmpDir . '/toto/');
     if (is_dir($tmpDir)) {
         self::tearDownAfterClass();
     } else {
         mkdir($tmpDir);
     }
     foreach (self::$files as $file) {
         if ('/' === $file[strlen($file) - 1]) {
             mkdir($file);
         } else {
             touch($file);
         }
     }
     file_put_contents($tmpDir . '/test.php', str_repeat(' ', 800));
     file_put_contents($tmpDir . '/test.py', str_repeat(' ', 2000));
     touch($tmpDir . '/foo/bar.tmp', strtotime('2005-10-15'));
     touch($tmpDir . '/test.php', strtotime('2005-10-15'));
 }