Test getSubpath().
authorGunnar Wrobel <p@rdus.de>
Mon, 15 Mar 2010 04:50:48 +0000 (05:50 +0100)
committerGunnar Wrobel <wrobel@temple.(none)>
Mon, 15 Mar 2010 10:33:21 +0000 (11:33 +0100)
framework/Kolab_Storage/test/Horde/Kolab/Storage/NamespaceTest.php

index 4259d2b..1e8d3c5 100644 (file)
@@ -184,4 +184,41 @@ class Horde_Kolab_Storage_NamespaceTest extends PHPUnit_Framework_TestCase
             Horde_String::convertCharset($folder->getName(), 'UTF7-IMAP')
         );
     }
+
+    public function testFolderSubpathIsAccessibleForNewFolders()
+    {
+        $folder = new Horde_Kolab_Storage_Folder(
+            null,
+            new Horde_Kolab_Storage_Namespace()
+        );
+        $folder->setName('test');
+        $this->assertEquals('test', $folder->getSubpath());
+    }
+
+    public function testFolderSubpathDoesNotContainUsernameIfPrefixContainsOtherNamespace()
+    {
+        $folder = new Horde_Kolab_Storage_Folder(
+            'user/test/mine',
+            new Horde_Kolab_Storage_Namespace()
+        );
+        $this->assertEquals('mine', $folder->getSubpath());
+    }
+
+    public function testFolderSubpathReturnsSubpathWithoutNamespacePrefix()
+    {
+        $folder = new Horde_Kolab_Storage_Folder(
+            'INBOX/a/b',
+            new Horde_Kolab_Storage_Namespace()
+        );
+        $this->assertEquals('a/b', $folder->getSubpath());
+    }
+
+    public function testFolderSubpathReturnsSubpathWithoutSharedPrefix()
+    {
+        $folder = new Horde_Kolab_Storage_Folder(
+            'shared.a/b',
+            new Horde_Kolab_Storage_Namespace()
+        );
+        $this->assertEquals('a/b', $folder->getSubpath());
+    }
 }
\ No newline at end of file