aboutsummaryrefslogtreecommitdiffstats
path: root/tests/filesystem/is_absolute_test.php
diff options
context:
space:
mode:
authorMateBartus <mate.bartus@gmail.com>2015-03-12 00:25:00 +0100
committerMateBartus <mate.bartus@gmail.com>2015-04-16 13:24:10 +0200
commit4bdef6fd21a5dcab455b0cd1ee2652de606929c3 (patch)
tree33eae92e90b43770b2c1e2e4508dbcf35d6bd7da /tests/filesystem/is_absolute_test.php
parentf86c5d905bb82967505ef3e07fa429b59c112871 (diff)
downloadforums-4bdef6fd21a5dcab455b0cd1ee2652de606929c3.tar
forums-4bdef6fd21a5dcab455b0cd1ee2652de606929c3.tar.gz
forums-4bdef6fd21a5dcab455b0cd1ee2652de606929c3.tar.bz2
forums-4bdef6fd21a5dcab455b0cd1ee2652de606929c3.tar.xz
forums-4bdef6fd21a5dcab455b0cd1ee2652de606929c3.zip
[ticket/13697] Moving filesystem related functions to filesystem service
* Moving filesystem service to \phpbb\filesystem namespace * Wraping Symfony's Filesystem component * Moving filesystem related functions from includes/functions.php into \phpbb\filesystem\filesystem Functions moved (and deprecated): - phpbb_chmod - phpbb_is_writable - phpbb_is_absolute - phpbb_own_realpath - phpbb_realpath * Adding interface for filesystem service PHPBB3-13697
Diffstat (limited to 'tests/filesystem/is_absolute_test.php')
-rw-r--r--tests/filesystem/is_absolute_test.php68
1 files changed, 68 insertions, 0 deletions
diff --git a/tests/filesystem/is_absolute_test.php b/tests/filesystem/is_absolute_test.php
new file mode 100644
index 0000000000..7a50989b74
--- /dev/null
+++ b/tests/filesystem/is_absolute_test.php
@@ -0,0 +1,68 @@
+<?php
+/**
+ *
+ * This file is part of the phpBB Forum Software package.
+ *
+ * @copyright (c) phpBB Limited <https://www.phpbb.com>
+ * @license GNU General Public License, version 2 (GPL-2.0)
+ *
+ * For full copyright and license information, please see
+ * the docs/CREDITS.txt file.
+ *
+ */
+
+class phpbb_filesystem_is_absolute_test extends phpbb_test_case
+{
+ /** @var \phpbb\filesystem\filesystem_interface */
+ protected $filesystem;
+
+ public function setUp()
+ {
+ parent::setUp();
+
+ $this->filesystem = new \phpbb\filesystem\filesystem();
+ }
+
+ static public function is_absolute_data()
+ {
+ return array(
+ // Empty
+ array('', false),
+
+ // Absolute unix style
+ array('/etc/phpbb', true),
+ // Unix does not support \ so that is not an absolute path
+ array('\etc\phpbb', false),
+
+ // Absolute windows style
+ array('c:\windows', true),
+ array('C:\Windows', true),
+ array('c:/windows', true),
+ array('C:/Windows', true),
+
+ // Executable
+ array('etc/phpbb', false),
+ array('explorer.exe', false),
+
+ // Relative subdir
+ array('Windows\System32', false),
+ array('Windows\System32\explorer.exe', false),
+ array('Windows/System32', false),
+ array('Windows/System32/explorer.exe', false),
+
+ // Relative updir
+ array('..\Windows\System32', false),
+ array('..\Windows\System32\explorer.exe', false),
+ array('../Windows/System32', false),
+ array('../Windows/System32/explorer.exe', false),
+ );
+ }
+
+ /**
+ * @dataProvider is_absolute_data
+ */
+ public function test_is_absolute($path, $expected)
+ {
+ $this->assertEquals($expected, $this->filesystem->is_absolute_path($path));
+ }
+}