diff options
Diffstat (limited to 'tests/lib/Files/Mount/MountTest.php')
-rw-r--r-- | tests/lib/Files/Mount/MountTest.php | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/tests/lib/Files/Mount/MountTest.php b/tests/lib/Files/Mount/MountTest.php new file mode 100644 index 00000000000..05c8a7d58e7 --- /dev/null +++ b/tests/lib/Files/Mount/MountTest.php @@ -0,0 +1,46 @@ +<?php + +/** + * SPDX-FileCopyrightText: 2020-2024 Nextcloud GmbH and Nextcloud contributors + * SPDX-FileCopyrightText: 2016 ownCloud, Inc. + * SPDX-License-Identifier: AGPL-3.0-or-later + */ + +namespace Test\Files\Mount; + +use OC\Files\Mount\MountPoint; +use OC\Files\Storage\StorageFactory; +use OC\Files\Storage\Wrapper\Wrapper; + +class MountTest extends \Test\TestCase { + public function testFromStorageObject(): void { + $storage = $this->getMockBuilder('\OC\Files\Storage\Temporary') + ->disableOriginalConstructor() + ->getMock(); + $mount = new MountPoint($storage, '/foo'); + $this->assertInstanceOf('\OC\Files\Storage\Temporary', $mount->getStorage()); + } + + public function testFromStorageClassname(): void { + $mount = new MountPoint('\OC\Files\Storage\Temporary', '/foo'); + $this->assertInstanceOf('\OC\Files\Storage\Temporary', $mount->getStorage()); + } + + public function testWrapper(): void { + $test = $this; + $wrapper = function ($mountPoint, $storage) use (&$test) { + $test->assertEquals('/foo/', $mountPoint); + $test->assertInstanceOf('\OC\Files\Storage\Storage', $storage); + return new Wrapper(['storage' => $storage]); + }; + + $loader = new StorageFactory(); + $loader->addStorageWrapper('test_wrapper', $wrapper); + + $storage = $this->getMockBuilder('\OC\Files\Storage\Temporary') + ->disableOriginalConstructor() + ->getMock(); + $mount = new MountPoint($storage, '/foo', [], $loader); + $this->assertInstanceOf('\OC\Files\Storage\Wrapper\Wrapper', $mount->getStorage()); + } +} |