add test cases for Mount

This commit is contained in:
Robin Appelman 2013-06-07 17:40:38 +02:00
parent 2708ab09ab
commit 31693d3937
1 changed files with 46 additions and 0 deletions

View File

@ -0,0 +1,46 @@
<?php
/**
* Copyright (c) 2013 Robin Appelman <icewind@owncloud.com>
* This file is licensed under the Affero General Public License version 3 or
* later.
* See the COPYING-README file.
*/
namespace Test\Files\Mount;
use OC\Files\Storage\Loader;
use OC\Files\Storage\Wrapper;
class Mount extends \PHPUnit_Framework_TestCase {
public function testFromStorageObject() {
$storage = $this->getMockBuilder('\OC\Files\Storage\Temporary')
->disableOriginalConstructor()
->getMock();
$mount = new \OC\Files\Mount\Mount($storage, '/foo');
$this->assertInstanceOf('\OC\Files\Storage\Temporary', $mount->getStorage());
}
public function testFromStorageClassname() {
$mount = new \OC\Files\Mount\Mount('\OC\Files\Storage\Temporary', '/foo');
$this->assertInstanceOf('\OC\Files\Storage\Temporary', $mount->getStorage());
}
public function testWrapper() {
$test = $this;
$wrapper = function ($mountPoint, $storage) use (&$test) {
$test->assertEquals('/foo/', $mountPoint);
$test->assertInstanceOf('\OC\Files\Storage\Storage', $storage);
return new Wrapper(array('storage' => $storage));
};
$loader = new Loader();
$loader->addStorageWrapper($wrapper);
$storage = $this->getMockBuilder('\OC\Files\Storage\Temporary')
->disableOriginalConstructor()
->getMock();
$mount = new \OC\Files\Mount\Mount($storage, '/foo', array(), $loader);
$this->assertInstanceOf('\OC\Files\Storage\Wrapper', $mount->getStorage());
}
}