예제 #1
0
 public function testGetRelativePath_CurrentToFull()
 {
     $s = DIRECTORY_SEPARATOR;
     $dir = getcwd();
     if ($pos = strpos($dir, ":")) {
         $dir = substr($dir, $pos + 1);
     }
     if ($dir == $s) {
         $this->assertEquals(".", Misc::getRelativePath($s));
     } else {
         $parts = explode($s, trim($dir, $s));
         $count = count($parts);
         foreach (range(1, $count) as $i) {
             $prefix[$i] = implode($s, array_fill(0, $i, ".."));
         }
         $this->assertEquals($prefix[$count], Misc::getRelativePath($s));
         $this->assertEquals($prefix[$count - 1], Misc::getRelativePath($s . $parts[0]));
         $this->assertEquals($prefix[$count - 1] . $s . "test", Misc::getRelativePath($s . $parts[0] . $s . "test"));
     }
     $this->assertEquals(".", Misc::getRelativePath($dir));
     $this->assertEquals("test", Misc::getRelativePath($dir . $s . "test"));
 }