]> source.dussan.org Git - nextcloud-server.git/commitdiff
Add unit test for multi-user configuration loading
authorRobin McCorkell <rmccorkell@karoshi.org.uk>
Tue, 15 Jul 2014 17:39:09 +0000 (18:39 +0100)
committerRobin McCorkell <rmccorkell@karoshi.org.uk>
Tue, 15 Jul 2014 17:39:09 +0000 (18:39 +0100)
apps/files_external/tests/mountconfig.php

index 9b04e200e2b6933b52a0795ab911d5e5926dd4f5..5f958e00d93ab5ed5e8f36b14420b743adfa373a 100644 (file)
@@ -800,4 +800,41 @@ class Test_Mount_Config extends \PHPUnit_Framework_TestCase {
                $this->assertEquals($priority,
                        $mountPoints['/'.self::TEST_USER1.'/files/ext']['priority']);
        }
+
+       /*
+        * Test for correct personal configuration loading in file sharing scenarios
+        */
+       public function testMultiUserPersonalConfigLoading() {
+               $mountConfig = array(
+                       'host' => 'somehost',
+                       'user' => 'someuser',
+                       'password' => 'somepassword',
+                       'root' => 'someroot'
+               );
+
+               // Create personal mount point
+               $this->assertTrue(
+                       OC_Mount_Config::addMountPoint(
+                               '/ext',
+                               '\OC\Files\Storage\SMB',
+                               $mountConfig,
+                               OC_Mount_Config::MOUNT_TYPE_USER,
+                               self::TEST_USER1,
+                               true
+                       )
+               );
+
+               // Ensure other user can read mount points
+               \OC_User::setUserId(self::TEST_USER2);
+               $mountPointsMe = OC_Mount_Config::getAbsoluteMountPoints(self::TEST_USER2);
+               $mountPointsOther = OC_Mount_Config::getAbsoluteMountPoints(self::TEST_USER1);
+
+               $this->assertEquals(0, count($mountPointsMe));
+               $this->assertEquals(1, count($mountPointsOther));
+               $this->assertTrue(isset($mountPointsOther['/'.self::TEST_USER1.'/files/ext']));
+               $this->assertEquals('\OC\Files\Storage\SMB',
+                       $mountPointsOther['/'.self::TEST_USER1.'/files/ext']['class']);
+               $this->assertEquals($mountConfig,
+                       $mountPointsOther['/'.self::TEST_USER1.'/files/ext']['options']);
+       }
 }