diff options
author | Andreas Gohr <andi@splitbrain.org> | 2012-05-01 12:38:41 -0700 |
---|---|---|
committer | Andreas Gohr <andi@splitbrain.org> | 2012-05-01 12:38:41 -0700 |
commit | 3c0d44f1aa44d3ac3d8b9e652d172b1eda680bbf (patch) | |
tree | 5a9a42fb720a774c2bb8c393d3046d7beb11bf8f /_test/tests/inc/init_fullpath.test.php | |
parent | e67fdd7b79e8f05b9e7e9164691114222e3c377c (diff) | |
parent | 1831d8a0f848f2e0dd5ef195791b6beaa5d1acb7 (diff) | |
download | rpg-3c0d44f1aa44d3ac3d8b9e652d172b1eda680bbf.tar.gz rpg-3c0d44f1aa44d3ac3d8b9e652d172b1eda680bbf.tar.bz2 |
Merge pull request #96 from dom-mel/phpunit
Replace SimpleTest with PHPUnit
Diffstat (limited to '_test/tests/inc/init_fullpath.test.php')
-rw-r--r-- | _test/tests/inc/init_fullpath.test.php | 87 |
1 files changed, 87 insertions, 0 deletions
diff --git a/_test/tests/inc/init_fullpath.test.php b/_test/tests/inc/init_fullpath.test.php new file mode 100644 index 000000000..e5b322874 --- /dev/null +++ b/_test/tests/inc/init_fullpath.test.php @@ -0,0 +1,87 @@ +<?php +require_once DOKU_INC.'inc/init.php'; + +class init_fullpath_test extends DokuWikiTest { + + function test_unix_paths(){ + $base = $_SERVER['SCRIPT_FILENAME']; + $_SERVER['SCRIPT_FILENAME'] = '/absolute/path/self.php'; + $GLOBALS['DOKU_UNITTEST_ASSUME_WINDOWS'] = false; + + // paths to check + $tests = array( + '/foo/bar/baz' => '/foo/bar/baz', + '/foo//bar/baz' => '/foo/bar/baz', + '/foo/../bar/baz' => '/bar/baz', + '/foo/./bar/baz' => '/foo/bar/baz', + '/foo/bar/..' => '/foo', + '/foo/bar/../../../baz' => '/baz', + + 'foo/bar/baz' => '/absolute/path/foo/bar/baz', + 'foo//bar/baz' => '/absolute/path/foo/bar/baz', + 'foo/../bar/baz' => '/absolute/path/bar/baz', + 'foo/./bar/baz' => '/absolute/path/foo/bar/baz', + 'foo/bar/..' => '/absolute/path/foo', + 'foo/bar/../../../baz' => '/absolute/baz', + ); + + foreach($tests as $from => $to){ + $info = "Testing '$from' resulted in '".fullpath($from)."'"; + + $this->assertEquals(fullpath($from), $to, $info); + } + + + $_SERVER['SCRIPT_FILENAME'] = $base; + unset($GLOBALS['DOKU_UNITTEST_ASSUME_WINDOWS']); + } + + function test_windows_paths(){ + $base = $_SERVER['SCRIPT_FILENAME']; + $_SERVER['SCRIPT_FILENAME'] = '/absolute/path/self.php'; + $GLOBALS['DOKU_UNITTEST_ASSUME_WINDOWS'] = true; + + // paths to check + $tests = array( + 'c:foo/bar/baz' => 'c:/foo/bar/baz', + 'c:foo//bar/baz' => 'c:/foo/bar/baz', + 'c:foo/../bar/baz' => 'c:/bar/baz', + 'c:foo/./bar/baz' => 'c:/foo/bar/baz', + 'c:foo/bar/..' => 'c:/foo', + 'c:foo/bar/../../../baz' => 'c:/baz', + + 'c:/foo/bar/baz' => 'c:/foo/bar/baz', + 'c:/foo//bar/baz' => 'c:/foo/bar/baz', + 'c:/foo/../bar/baz' => 'c:/bar/baz', + 'c:/foo/./bar/baz' => 'c:/foo/bar/baz', + 'c:/foo/bar/..' => 'c:/foo', + 'c:/foo/bar/../../../baz' => 'c:/baz', + + 'c:\\foo\\bar\\baz' => 'c:/foo/bar/baz', + 'c:\\foo\\\\bar\\baz' => 'c:/foo/bar/baz', + 'c:\\foo\\..\\bar\\baz' => 'c:/bar/baz', + 'c:\\foo\\.\\bar\\baz' => 'c:/foo/bar/baz', + 'c:\\foo\\bar\\..' => 'c:/foo', + 'c:\\foo\\bar\\..\\..\\..\\baz' => 'c:/baz', + + '\\\\server\\share/foo/bar/baz' => '\\\\server\\share/foo/bar/baz', + '\\\\server\\share/foo//bar/baz' => '\\\\server\\share/foo/bar/baz', + '\\\\server\\share/foo/../bar/baz' => '\\\\server\\share/bar/baz', + '\\\\server\\share/foo/./bar/baz' => '\\\\server\\share/foo/bar/baz', + '\\\\server\\share/foo/bar/..' => '\\\\server\\share/foo', + '\\\\server\\share/foo/bar/../../../baz' => '\\\\server\\share/baz', + ); + + foreach($tests as $from => $to){ + $info = "Testing '$from' resulted in '".fullpath($from)."'"; + + $this->assertEquals(fullpath($from), $to, $info); + } + + + $_SERVER['SCRIPT_FILENAME'] = $base; + unset($GLOBALS['DOKU_UNITTEST_ASSUME_WINDOWS']); + } + +} +//Setup VIM: ex: et ts=4 : |