From 96b798a59f236f4251ced87ecac9da55e82d1685 Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Sat, 22 Sep 2012 14:51:15 +0200 Subject: move storage backend test cases to their own namespace --- apps/files_external/tests/amazons3.php | 8 +- apps/files_external/tests/ftp.php | 8 +- apps/files_external/tests/google.php | 6 +- apps/files_external/tests/smb.php | 8 +- apps/files_external/tests/swift.php | 6 +- apps/files_external/tests/webdav.php | 6 +- tests/lib/files/storage/commontest.php | 43 +++++++ tests/lib/files/storage/local.php | 38 ++++++ tests/lib/files/storage/storage.php | 223 +++++++++++++++++++++++++++++++++ tests/lib/filestorage.php | 222 -------------------------------- tests/lib/filestorage/commontest.php | 41 ------ tests/lib/filestorage/local.php | 38 ------ 12 files changed, 331 insertions(+), 316 deletions(-) create mode 100644 tests/lib/files/storage/commontest.php create mode 100644 tests/lib/files/storage/local.php create mode 100644 tests/lib/files/storage/storage.php delete mode 100644 tests/lib/filestorage.php delete mode 100644 tests/lib/filestorage/commontest.php delete mode 100644 tests/lib/filestorage/local.php diff --git a/apps/files_external/tests/amazons3.php b/apps/files_external/tests/amazons3.php index ad1c453abb7..cf372aecbd7 100644 --- a/apps/files_external/tests/amazons3.php +++ b/apps/files_external/tests/amazons3.php @@ -20,12 +20,14 @@ * License along with this library. If not, see . */ +namespace Test\Files\Storage; + $config = include('apps/files_external/tests/config.php'); if (!is_array($config) or !isset($config['amazons3']) or !$config['amazons3']['run']) { - abstract class Test_Filestorage_AmazonS3 extends Test_FileStorage{} + abstract class AmazonS3 extends Storage{} return; } else { - class Test_Filestorage_AmazonS3 extends Test_FileStorage { + class AmazonS3 extends Storage { private $config; private $id; @@ -38,7 +40,7 @@ if (!is_array($config) or !isset($config['amazons3']) or !$config['amazons3']['r } public function tearDown() { - $s3 = new AmazonS3(array('key' => $this->config['amazons3']['key'], 'secret' => $this->config['amazons3']['secret'])); + $s3 = new \AmazonS3(array('key' => $this->config['amazons3']['key'], 'secret' => $this->config['amazons3']['secret'])); if ($s3->delete_all_objects($this->id)) { $s3->delete_bucket($this->id); } diff --git a/apps/files_external/tests/ftp.php b/apps/files_external/tests/ftp.php index 105f7b485bd..8a0821e25a5 100644 --- a/apps/files_external/tests/ftp.php +++ b/apps/files_external/tests/ftp.php @@ -6,12 +6,14 @@ * See the COPYING-README file. */ +namespace Test\Files\Storage; + $config=include('apps/files_external/tests/config.php'); if(!is_array($config) or !isset($config['ftp']) or !$config['ftp']['run']) { - abstract class Test_Filestorage_FTP extends Test_FileStorage{} + abstract class FTP extends Storage{} return; }else{ - class Test_Filestorage_FTP extends Test_FileStorage { + class FTP extends Storage { private $config; public function setUp() { @@ -22,7 +24,7 @@ if(!is_array($config) or !isset($config['ftp']) or !$config['ftp']['run']) { } public function tearDown() { - OCP\Files::rmdirr($this->instance->constructUrl('')); + \OCP\Files::rmdirr($this->instance->constructUrl('')); } } } diff --git a/apps/files_external/tests/google.php b/apps/files_external/tests/google.php index e96c2263e1c..fff6461c912 100644 --- a/apps/files_external/tests/google.php +++ b/apps/files_external/tests/google.php @@ -20,12 +20,14 @@ * License along with this library. If not, see . */ +namespace Test\Files\Storage; + $config=include('apps/files_external/tests/config.php'); if(!is_array($config) or !isset($config['google']) or !$config['google']['run']) { - abstract class Test_Filestorage_Google extends Test_FileStorage{} + abstract class Google extends Storage{} return; }else{ - class Test_Filestorage_Google extends Test_FileStorage { + class Google extends Storage { private $config; diff --git a/apps/files_external/tests/smb.php b/apps/files_external/tests/smb.php index a0c5d834736..87b110a241c 100644 --- a/apps/files_external/tests/smb.php +++ b/apps/files_external/tests/smb.php @@ -8,11 +8,13 @@ $config=include('apps/files_external/tests/config.php'); +namespace Test\Files\Storage; + if(!is_array($config) or !isset($config['smb']) or !$config['smb']['run']) { - abstract class Test_Filestorage_SMB extends Test_FileStorage{} + abstract class SMB extends Storage{} return; }else{ - class Test_Filestorage_SMB extends Test_FileStorage { + class SMB extends Storage { private $config; public function setUp() { @@ -23,7 +25,7 @@ if(!is_array($config) or !isset($config['smb']) or !$config['smb']['run']) { } public function tearDown() { - OCP\Files::rmdirr($this->instance->constructUrl('')); + \OCP\Files::rmdirr($this->instance->constructUrl('')); } } } diff --git a/apps/files_external/tests/swift.php b/apps/files_external/tests/swift.php index 3e1485b0f3a..98a97f99b5b 100644 --- a/apps/files_external/tests/swift.php +++ b/apps/files_external/tests/swift.php @@ -6,12 +6,14 @@ * See the COPYING-README file. */ +namespace Test\Files\Storage; + $config=include('apps/files_external/tests/config.php'); if(!is_array($config) or !isset($config['swift']) or !$config['swift']['run']) { - abstract class Test_Filestorage_SWIFT extends Test_FileStorage{} + abstract class SWIFT extends Storage{} return; }else{ - class Test_Filestorage_SWIFT extends Test_FileStorage { + class SWIFT extends Storage { private $config; public function setUp() { diff --git a/apps/files_external/tests/webdav.php b/apps/files_external/tests/webdav.php index 6b1121c9d0c..cddd0d513ed 100644 --- a/apps/files_external/tests/webdav.php +++ b/apps/files_external/tests/webdav.php @@ -6,12 +6,14 @@ * See the COPYING-README file. */ +namespace Test\Files\Storage; + $config=include('apps/files_external/tests/config.php'); if(!is_array($config) or !isset($config['webdav']) or !$config['webdav']['run']) { - abstract class Test_Filestorage_DAV extends Test_FileStorage{} + abstract class DAV extends Storage{} return; }else{ - class Test_Filestorage_DAV extends Test_FileStorage { + class DAV extends Storage { private $config; public function setUp() { diff --git a/tests/lib/files/storage/commontest.php b/tests/lib/files/storage/commontest.php new file mode 100644 index 00000000000..2e3808e2d92 --- /dev/null +++ b/tests/lib/files/storage/commontest.php @@ -0,0 +1,43 @@ +. +* +*/ + +namespace Test\Files\Storage; + +class CommonTest extends Storage { + /** + * @var string tmpDir + */ + private $tmpDir; + public function setUp() { + $this->tmpDir=get_temp_dir().'/filestoragecommon'; + if(!file_exists($this->tmpDir)) { + mkdir($this->tmpDir); + } + $this->instance=new \OC\Files\Storage\CommonTest(array('datadir'=>$this->tmpDir)); + } + + public function tearDown() { + \OC_Helper::rmdirr($this->tmpDir); + } +} + +?> diff --git a/tests/lib/files/storage/local.php b/tests/lib/files/storage/local.php new file mode 100644 index 00000000000..6672368e676 --- /dev/null +++ b/tests/lib/files/storage/local.php @@ -0,0 +1,38 @@ +. +* +*/ + +namespace Test\Files\Storage; + +class Local extends Storage { + /** + * @var string tmpDir + */ + private $tmpDir; + public function setUp() { + $this->tmpDir=\OC_Helper::tmpFolder(); + $this->instance=new \OC\Files\Storage\Local(array('datadir'=>$this->tmpDir)); + } + + public function tearDown() { + \OC_Helper::rmdirr($this->tmpDir); + } +} diff --git a/tests/lib/files/storage/storage.php b/tests/lib/files/storage/storage.php new file mode 100644 index 00000000000..9c8581b259a --- /dev/null +++ b/tests/lib/files/storage/storage.php @@ -0,0 +1,223 @@ +. +* +*/ + +namespace Test\Files\Storage; + +abstract class Storage extends \UnitTestCase { + /** + * @var \OC\Files\Storage\Storage instance + */ + protected $instance; + + /** + * the root folder of the storage should always exist, be readable and be recognized as a directory + */ + public function testRoot() { + $this->assertTrue($this->instance->file_exists('/'),'Root folder does not exist'); + $this->assertTrue($this->instance->isReadable('/'),'Root folder is not readable'); + $this->assertTrue($this->instance->is_dir('/'),'Root folder is not a directory'); + $this->assertFalse($this->instance->is_file('/'),'Root folder is a file'); + $this->assertEqual('dir',$this->instance->filetype('/')); + + //without this, any further testing would be useless, not an acutal requirement for filestorage though + $this->assertTrue($this->instance->isUpdatable('/'),'Root folder is not writable'); + } + + public function testDirectories() { + $this->assertFalse($this->instance->file_exists('/folder')); + + $this->assertTrue($this->instance->mkdir('/folder')); + + $this->assertTrue($this->instance->file_exists('/folder')); + $this->assertTrue($this->instance->is_dir('/folder')); + $this->assertFalse($this->instance->is_file('/folder')); + $this->assertEqual('dir',$this->instance->filetype('/folder')); + $this->assertEqual(0,$this->instance->filesize('/folder')); + $this->assertTrue($this->instance->isReadable('/folder')); + $this->assertTrue($this->instance->isUpdatable('/folder')); + + $dh=$this->instance->opendir('/'); + $content=array(); + while($file=readdir($dh)) { + if($file!='.' and $file!='..') { + $content[]=$file; + } + } + $this->assertEqual(array('folder'),$content); + + $this->assertFalse($this->instance->mkdir('/folder'));//cant create existing folders + $this->assertTrue($this->instance->rmdir('/folder')); + + $this->assertFalse($this->instance->file_exists('/folder')); + + $this->assertFalse($this->instance->rmdir('/folder'));//cant remove non existing folders + + $dh=$this->instance->opendir('/'); + $content=array(); + while($file=readdir($dh)) { + if($file!='.' and $file!='..') { + $content[]=$file; + } + } + $this->assertEqual(array(),$content); + } + + /** + * test the various uses of file_get_contents and file_put_contents + */ + public function testGetPutContents() { + $sourceFile=\OC::$SERVERROOT.'/tests/data/lorem.txt'; + $sourceText=file_get_contents($sourceFile); + + //fill a file with string data + $this->instance->file_put_contents('/lorem.txt',$sourceText); + $this->assertFalse($this->instance->is_dir('/lorem.txt')); + $this->assertEqual($sourceText,$this->instance->file_get_contents('/lorem.txt'),'data returned from file_get_contents is not equal to the source data'); + + //empty the file + $this->instance->file_put_contents('/lorem.txt',''); + $this->assertEqual('',$this->instance->file_get_contents('/lorem.txt'),'file not emptied'); + } + + /** + * test various known mimetypes + */ + public function testMimeType() { + $this->assertEqual('httpd/unix-directory',$this->instance->getMimeType('/')); + $this->assertEqual(false,$this->instance->getMimeType('/non/existing/file')); + + $textFile=\OC::$SERVERROOT.'/tests/data/lorem.txt'; + $this->instance->file_put_contents('/lorem.txt',file_get_contents($textFile,'r')); + $this->assertEqual('text/plain',$this->instance->getMimeType('/lorem.txt')); + + $pngFile=\OC::$SERVERROOT.'/tests/data/logo-wide.png'; + $this->instance->file_put_contents('/logo-wide.png',file_get_contents($pngFile,'r')); + $this->assertEqual('image/png',$this->instance->getMimeType('/logo-wide.png')); + + $svgFile=\OC::$SERVERROOT.'/tests/data/logo-wide.svg'; + $this->instance->file_put_contents('/logo-wide.svg',file_get_contents($svgFile,'r')); + $this->assertEqual('image/svg+xml',$this->instance->getMimeType('/logo-wide.svg')); + } + + public function testCopyAndMove() { + $textFile=\OC::$SERVERROOT.'/tests/data/lorem.txt'; + $this->instance->file_put_contents('/source.txt',file_get_contents($textFile)); + $this->instance->copy('/source.txt','/target.txt'); + $this->assertTrue($this->instance->file_exists('/target.txt')); + $this->assertEqual($this->instance->file_get_contents('/source.txt'),$this->instance->file_get_contents('/target.txt')); + + $this->instance->rename('/source.txt','/target2.txt'); + $this->assertTrue($this->instance->file_exists('/target2.txt')); + $this->assertFalse($this->instance->file_exists('/source.txt')); + $this->assertEqual(file_get_contents($textFile),$this->instance->file_get_contents('/target.txt')); + } + + public function testLocal() { + $textFile=\OC::$SERVERROOT.'/tests/data/lorem.txt'; + $this->instance->file_put_contents('/lorem.txt',file_get_contents($textFile)); + $localFile=$this->instance->getLocalFile('/lorem.txt'); + $this->assertTrue(file_exists($localFile)); + $this->assertEqual(file_get_contents($localFile),file_get_contents($textFile)); + + $this->instance->mkdir('/folder'); + $this->instance->file_put_contents('/folder/lorem.txt',file_get_contents($textFile)); + $this->instance->file_put_contents('/folder/bar.txt','asd'); + $this->instance->mkdir('/folder/recursive'); + $this->instance->file_put_contents('/folder/recursive/file.txt','foo'); + $localFolder=$this->instance->getLocalFolder('/folder'); + + $this->assertTrue(is_dir($localFolder)); + $this->assertTrue(file_exists($localFolder.'/lorem.txt')); + $this->assertEqual(file_get_contents($localFolder.'/lorem.txt'),file_get_contents($textFile)); + $this->assertEqual(file_get_contents($localFolder.'/bar.txt'),'asd'); + $this->assertEqual(file_get_contents($localFolder.'/recursive/file.txt'),'foo'); + } + + public function testStat() { + $textFile=\OC::$SERVERROOT.'/tests/data/lorem.txt'; + $ctimeStart=time(); + $this->instance->file_put_contents('/lorem.txt',file_get_contents($textFile)); + $this->assertTrue($this->instance->isReadable('/lorem.txt')); + $ctimeEnd=time(); + $cTime=$this->instance->filectime('/lorem.txt'); + $mTime=$this->instance->filemtime('/lorem.txt'); + if($cTime!=-1) {//not everything can support ctime + $this->assertTrue(($ctimeStart-1)<=$cTime); + $this->assertTrue($cTime<=($ctimeEnd+1)); + } + $this->assertTrue($this->instance->hasUpdated('/lorem.txt',$ctimeStart-1)); + $this->assertTrue($this->instance->hasUpdated('/',$ctimeStart-1)); + + $this->assertTrue(($ctimeStart-1)<=$mTime); + $this->assertTrue($mTime<=($ctimeEnd+1)); + $this->assertEqual(filesize($textFile),$this->instance->filesize('/lorem.txt')); + + $stat=$this->instance->stat('/lorem.txt'); + //only size, mtime and ctime are requered in the result + $this->assertEqual($stat['size'],$this->instance->filesize('/lorem.txt')); + $this->assertEqual($stat['mtime'],$mTime); + $this->assertEqual($stat['ctime'],$cTime); + + $mtimeStart=time(); + $this->instance->touch('/lorem.txt'); + $mtimeEnd=time(); + $originalCTime=$cTime; + $cTime=$this->instance->filectime('/lorem.txt'); + $mTime=$this->instance->filemtime('/lorem.txt'); + $this->assertTrue(($mtimeStart-1)<=$mTime); + $this->assertTrue($mTime<=($mtimeEnd+1)); + $this->assertEqual($cTime,$originalCTime); + + $this->assertTrue($this->instance->hasUpdated('/lorem.txt',$mtimeStart-1)); + + if($this->instance->touch('/lorem.txt',100)!==false) { + $mTime=$this->instance->filemtime('/lorem.txt'); + $this->assertEqual($mTime,100); + } + + $mtimeStart=time(); + $fh=$this->instance->fopen('/lorem.txt','a'); + fwrite($fh,' '); + fclose($fh); + clearstatcache(); + $mtimeEnd=time(); + $mTime=$this->instance->filemtime('/lorem.txt'); + $this->assertTrue(($mtimeStart-1)<=$mTime); + $this->assertTrue($mTime<=($mtimeEnd+1)); + + $this->instance->unlink('/lorem.txt'); + $this->assertTrue($this->instance->hasUpdated('/',$mtimeStart-1)); + } + + public function testSearch() { + $textFile=\OC::$SERVERROOT.'/tests/data/lorem.txt'; + $this->instance->file_put_contents('/lorem.txt',file_get_contents($textFile,'r')); + $pngFile=\OC::$SERVERROOT.'/tests/data/logo-wide.png'; + $this->instance->file_put_contents('/logo-wide.png',file_get_contents($pngFile,'r')); + $svgFile=\OC::$SERVERROOT.'/tests/data/logo-wide.svg'; + $this->instance->file_put_contents('/logo-wide.svg',file_get_contents($svgFile,'r')); + $result=$this->instance->search('logo'); + $this->assertEqual(2,count($result)); + $this->assertNotIdentical(false,array_search('/logo-wide.svg',$result)); + $this->assertNotIdentical(false,array_search('/logo-wide.png',$result)); + } +} diff --git a/tests/lib/filestorage.php b/tests/lib/filestorage.php deleted file mode 100644 index bfb40bcd674..00000000000 --- a/tests/lib/filestorage.php +++ /dev/null @@ -1,222 +0,0 @@ -. -* -*/ - -abstract class Test_FileStorage extends UnitTestCase { - /** - * @var \OC\Files\Storage\Storage instance - */ - protected $instance; - - /** - * the root folder of the storage should always exist, be readable and be recognized as a directory - */ - public function testRoot() { - $this->assertTrue($this->instance->file_exists('/'),'Root folder does not exist'); - $this->assertTrue($this->instance->isReadable('/'),'Root folder is not readable'); - $this->assertTrue($this->instance->is_dir('/'),'Root folder is not a directory'); - $this->assertFalse($this->instance->is_file('/'),'Root folder is a file'); - $this->assertEqual('dir',$this->instance->filetype('/')); - - //without this, any further testing would be useless, not an acutal requirement for filestorage though - $this->assertTrue($this->instance->isUpdatable('/'),'Root folder is not writable'); - } - - public function testDirectories() { - $this->assertFalse($this->instance->file_exists('/folder')); - - $this->assertTrue($this->instance->mkdir('/folder')); - - $this->assertTrue($this->instance->file_exists('/folder')); - $this->assertTrue($this->instance->is_dir('/folder')); - $this->assertFalse($this->instance->is_file('/folder')); - $this->assertEqual('dir',$this->instance->filetype('/folder')); - $this->assertEqual(0,$this->instance->filesize('/folder')); - $this->assertTrue($this->instance->isReadable('/folder')); - $this->assertTrue($this->instance->isUpdatable('/folder')); - - $dh=$this->instance->opendir('/'); - $content=array(); - while($file=readdir($dh)) { - if($file!='.' and $file!='..') { - $content[]=$file; - } - } - $this->assertEqual(array('folder'),$content); - - $this->assertFalse($this->instance->mkdir('/folder'));//cant create existing folders - $this->assertTrue($this->instance->rmdir('/folder')); - - $this->assertFalse($this->instance->file_exists('/folder')); - - $this->assertFalse($this->instance->rmdir('/folder'));//cant remove non existing folders - - $dh=$this->instance->opendir('/'); - $content=array(); - while($file=readdir($dh)) { - if($file!='.' and $file!='..') { - $content[]=$file; - } - } - $this->assertEqual(array(),$content); - } - - /** - * test the various uses of file_get_contents and file_put_contents - */ - public function testGetPutContents() { - $sourceFile=OC::$SERVERROOT.'/tests/data/lorem.txt'; - $sourceText=file_get_contents($sourceFile); - - //fill a file with string data - $this->instance->file_put_contents('/lorem.txt',$sourceText); - $this->assertFalse($this->instance->is_dir('/lorem.txt')); - $this->assertEqual($sourceText,$this->instance->file_get_contents('/lorem.txt'),'data returned from file_get_contents is not equal to the source data'); - - //empty the file - $this->instance->file_put_contents('/lorem.txt',''); - $this->assertEqual('',$this->instance->file_get_contents('/lorem.txt'),'file not emptied'); - } - - /** - * test various known mimetypes - */ - public function testMimeType() { - $this->assertEqual('httpd/unix-directory',$this->instance->getMimeType('/')); - $this->assertEqual(false,$this->instance->getMimeType('/non/existing/file')); - - $textFile=OC::$SERVERROOT.'/tests/data/lorem.txt'; - $this->instance->file_put_contents('/lorem.txt',file_get_contents($textFile,'r')); - $this->assertEqual('text/plain',$this->instance->getMimeType('/lorem.txt')); - - $pngFile=OC::$SERVERROOT.'/tests/data/logo-wide.png'; - $this->instance->file_put_contents('/logo-wide.png',file_get_contents($pngFile,'r')); - $this->assertEqual('image/png',$this->instance->getMimeType('/logo-wide.png')); - - $svgFile=OC::$SERVERROOT.'/tests/data/logo-wide.svg'; - $this->instance->file_put_contents('/logo-wide.svg',file_get_contents($svgFile,'r')); - $this->assertEqual('image/svg+xml',$this->instance->getMimeType('/logo-wide.svg')); - } - - public function testCopyAndMove() { - $textFile=OC::$SERVERROOT.'/tests/data/lorem.txt'; - $this->instance->file_put_contents('/source.txt',file_get_contents($textFile)); - $this->instance->copy('/source.txt','/target.txt'); - $this->assertTrue($this->instance->file_exists('/target.txt')); - $this->assertEqual($this->instance->file_get_contents('/source.txt'),$this->instance->file_get_contents('/target.txt')); - - $this->instance->rename('/source.txt','/target2.txt'); - $this->assertTrue($this->instance->file_exists('/target2.txt')); - $this->assertFalse($this->instance->file_exists('/source.txt')); - $this->assertEqual(file_get_contents($textFile),$this->instance->file_get_contents('/target.txt')); - } - - public function testLocal() { - $textFile=OC::$SERVERROOT.'/tests/data/lorem.txt'; - $this->instance->file_put_contents('/lorem.txt',file_get_contents($textFile)); - $localFile=$this->instance->getLocalFile('/lorem.txt'); - $this->assertTrue(file_exists($localFile)); - $this->assertEqual(file_get_contents($localFile),file_get_contents($textFile)); - - $this->instance->mkdir('/folder'); - $this->instance->file_put_contents('/folder/lorem.txt',file_get_contents($textFile)); - $this->instance->file_put_contents('/folder/bar.txt','asd'); - $this->instance->mkdir('/folder/recursive'); - $this->instance->file_put_contents('/folder/recursive/file.txt','foo'); - $localFolder=$this->instance->getLocalFolder('/folder'); - - $this->assertTrue(is_dir($localFolder)); - $this->assertTrue(file_exists($localFolder.'/lorem.txt')); - $this->assertEqual(file_get_contents($localFolder.'/lorem.txt'),file_get_contents($textFile)); - $this->assertEqual(file_get_contents($localFolder.'/bar.txt'),'asd'); - $this->assertEqual(file_get_contents($localFolder.'/recursive/file.txt'),'foo'); - } - - public function testStat() { - $textFile=OC::$SERVERROOT.'/tests/data/lorem.txt'; - $ctimeStart=time(); - $this->instance->file_put_contents('/lorem.txt',file_get_contents($textFile)); - $this->assertTrue($this->instance->isReadable('/lorem.txt')); - $ctimeEnd=time(); - $cTime=$this->instance->filectime('/lorem.txt'); - $mTime=$this->instance->filemtime('/lorem.txt'); - if($cTime!=-1) {//not everything can support ctime - $this->assertTrue(($ctimeStart-1)<=$cTime); - $this->assertTrue($cTime<=($ctimeEnd+1)); - } - $this->assertTrue($this->instance->hasUpdated('/lorem.txt',$ctimeStart-1)); - $this->assertTrue($this->instance->hasUpdated('/',$ctimeStart-1)); - - $this->assertTrue(($ctimeStart-1)<=$mTime); - $this->assertTrue($mTime<=($ctimeEnd+1)); - $this->assertEqual(filesize($textFile),$this->instance->filesize('/lorem.txt')); - - $stat=$this->instance->stat('/lorem.txt'); - //only size, mtime and ctime are requered in the result - $this->assertEqual($stat['size'],$this->instance->filesize('/lorem.txt')); - $this->assertEqual($stat['mtime'],$mTime); - $this->assertEqual($stat['ctime'],$cTime); - - $mtimeStart=time(); - $this->instance->touch('/lorem.txt'); - $mtimeEnd=time(); - $originalCTime=$cTime; - $cTime=$this->instance->filectime('/lorem.txt'); - $mTime=$this->instance->filemtime('/lorem.txt'); - $this->assertTrue(($mtimeStart-1)<=$mTime); - $this->assertTrue($mTime<=($mtimeEnd+1)); - $this->assertEqual($cTime,$originalCTime); - - $this->assertTrue($this->instance->hasUpdated('/lorem.txt',$mtimeStart-1)); - - if($this->instance->touch('/lorem.txt',100)!==false) { - $mTime=$this->instance->filemtime('/lorem.txt'); - $this->assertEqual($mTime,100); - } - - $mtimeStart=time(); - $fh=$this->instance->fopen('/lorem.txt','a'); - fwrite($fh,' '); - fclose($fh); - clearstatcache(); - $mtimeEnd=time(); - $originalCTime=$cTime; - $mTime=$this->instance->filemtime('/lorem.txt'); - $this->assertTrue(($mtimeStart-1)<=$mTime); - $this->assertTrue($mTime<=($mtimeEnd+1)); - - $this->instance->unlink('/lorem.txt'); - $this->assertTrue($this->instance->hasUpdated('/',$mtimeStart-1)); - } - - public function testSearch() { - $textFile=OC::$SERVERROOT.'/tests/data/lorem.txt'; - $this->instance->file_put_contents('/lorem.txt',file_get_contents($textFile,'r')); - $pngFile=OC::$SERVERROOT.'/tests/data/logo-wide.png'; - $this->instance->file_put_contents('/logo-wide.png',file_get_contents($pngFile,'r')); - $svgFile=OC::$SERVERROOT.'/tests/data/logo-wide.svg'; - $this->instance->file_put_contents('/logo-wide.svg',file_get_contents($svgFile,'r')); - $result=$this->instance->search('logo'); - $this->assertEqual(2,count($result)); - $this->assertNotIdentical(false,array_search('/logo-wide.svg',$result)); - $this->assertNotIdentical(false,array_search('/logo-wide.png',$result)); - } -} diff --git a/tests/lib/filestorage/commontest.php b/tests/lib/filestorage/commontest.php deleted file mode 100644 index 0e52e916789..00000000000 --- a/tests/lib/filestorage/commontest.php +++ /dev/null @@ -1,41 +0,0 @@ -. -* -*/ - -class Test_Filestorage_CommonTest extends Test_FileStorage { - /** - * @var string tmpDir - */ - private $tmpDir; - public function setUp() { - $this->tmpDir=get_temp_dir().'/filestoragecommon'; - if(!file_exists($this->tmpDir)) { - mkdir($this->tmpDir); - } - $this->instance=new \OC\Files\Storage\CommonTest(array('datadir'=>$this->tmpDir)); - } - - public function tearDown() { - OC_Helper::rmdirr($this->tmpDir); - } -} - -?> \ No newline at end of file diff --git a/tests/lib/filestorage/local.php b/tests/lib/filestorage/local.php deleted file mode 100644 index 7bb27830baa..00000000000 --- a/tests/lib/filestorage/local.php +++ /dev/null @@ -1,38 +0,0 @@ -. -* -*/ - -class Test_Filestorage_Local extends Test_FileStorage { - /** - * @var string tmpDir - */ - private $tmpDir; - public function setUp() { - $this->tmpDir=OC_Helper::tmpFolder(); - $this->instance=new \OC\Files\Storage\Local(array('datadir'=>$this->tmpDir)); - } - - public function tearDown() { - OC_Helper::rmdirr($this->tmpDir); - } -} - -?> \ No newline at end of file -- cgit v1.2.3