some tests for the file blacklist
This commit is contained in:
parent
2f0fd84477
commit
503922ff6c
|
@ -24,7 +24,7 @@ class Test_Filesystem extends UnitTestCase {
|
|||
/**
|
||||
* @var array tmpDirs
|
||||
*/
|
||||
private $tmpDirs=array();
|
||||
private $tmpDirs = array();
|
||||
|
||||
/**
|
||||
* @return array
|
||||
|
@ -72,21 +72,55 @@ class Test_Filesystem extends UnitTestCase {
|
|||
}
|
||||
}
|
||||
|
||||
public function testHooks() {
|
||||
if(OC_Filesystem::getView()){
|
||||
public function testBlacklist() {
|
||||
OC_Hook::clear('OC_Filesystem');
|
||||
OC_Hook::connect('OC_Filesystem', 'write', 'OC_Filesystem', 'isBlacklisted');
|
||||
OC_Hook::connect('OC_Filesystem', 'rename', 'OC_Filesystem', 'isBlacklisted');
|
||||
|
||||
$run = true;
|
||||
OC_Hook::emit(
|
||||
OC_Filesystem::CLASSNAME,
|
||||
OC_Filesystem::signal_write,
|
||||
array(
|
||||
OC_Filesystem::signal_param_path => '/test/.htaccess',
|
||||
OC_Filesystem::signal_param_run => &$run
|
||||
)
|
||||
);
|
||||
$this->assertFalse($run);
|
||||
|
||||
if (OC_Filesystem::getView()) {
|
||||
$user = OC_User::getUser();
|
||||
}else{
|
||||
$user=uniqid();
|
||||
OC_Filesystem::init('/'.$user.'/files');
|
||||
} else {
|
||||
$user = uniqid();
|
||||
OC_Filesystem::init('/' . $user . '/files');
|
||||
}
|
||||
|
||||
OC_Filesystem::mount('OC_Filestorage_Temporary', array(), '/');
|
||||
|
||||
$rootView = new OC_FilesystemView('');
|
||||
$rootView->mkdir('/' . $user);
|
||||
$rootView->mkdir('/' . $user . '/files');
|
||||
|
||||
$this->assertFalse(OC_Filesystem::file_put_contents('/.htaccess', 'foo'));
|
||||
$fh = fopen(__FILE__, 'r');
|
||||
$this->assertFalse(OC_Filesystem::file_put_contents('/.htaccess', $fh));
|
||||
}
|
||||
|
||||
public function testHooks() {
|
||||
if (OC_Filesystem::getView()) {
|
||||
$user = OC_User::getUser();
|
||||
} else {
|
||||
$user = uniqid();
|
||||
OC_Filesystem::init('/' . $user . '/files');
|
||||
}
|
||||
OC_Hook::clear('OC_Filesystem');
|
||||
OC_Hook::connect('OC_Filesystem', 'post_write', $this, 'dummyHook');
|
||||
|
||||
OC_Filesystem::mount('OC_Filestorage_Temporary', array(), '/');
|
||||
|
||||
$rootView=new OC_FilesystemView('');
|
||||
$rootView->mkdir('/'.$user);
|
||||
$rootView->mkdir('/'.$user.'/files');
|
||||
$rootView = new OC_FilesystemView('');
|
||||
$rootView->mkdir('/' . $user);
|
||||
$rootView->mkdir('/' . $user . '/files');
|
||||
|
||||
OC_Filesystem::file_put_contents('/foo', 'foo');
|
||||
OC_Filesystem::mkdir('/bar');
|
||||
|
|
Loading…
Reference in New Issue